如何与其他小部件共享共享小部件指针
How to share share widgets pointers with another widgets
我有一种用QT编写的视频播放器应用程序,其想法是我可以点击视频帧,应用程序将从这个精确的像素中获得坐标和颜色信息,到目前为止,该应用程序已经正常工作,但问题是我有一个控制面板,希望有一个列表小工具,我用帧中的信息填充它,要做到这一点,我需要在这两个小部件之间进行某种通信,我现在要做的是使用这种方法来找到主窗口:
QWidget* mainwindow;
QWidgetList list = QApplication::topLevelWidgets();
for (int a = 0; a < list.size(); a++)
if (list[a]->objectName() == "MainWindow")
{
mainwindow = list[a];
break;
}
通过这种方法,我可以访问主窗口小部件,主窗口将充当访问另一个小部件指针的桥梁,我看到这种方法的问题是,我需要对我需要访问的每个小部件都有一个get方法。。另一种方法是在小部件中有一个set方法,并使用父小部件。如果希望能够访问我正在寻找的两个小部件来设置它,那么问题是在父小部件中为此制定方法。希望与这两个方法无关。。所以我想问的是,最好或更干净的方法是什么?有什么QT方法可以做到这一点?谢谢
PS:需要明确的是,我不是在谈论信号和插槽,我的想法是使用这些,但首先我需要一个指向我要查找的小部件的指针,然后连接到它的插槽!
您正试图在较低级别的代码中实现这一点,这就是为什么它很尴尬。两个小部件都没有另一个的上下文。
只需在要通信的两个小部件上创建信号/插槽,然后在创建它们后让调用范围将它们连接起来。
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 比较并显示使用最小值(a,b)和最大值(a、b)升序排列的4个数字
- 最小硬币更换问题(自上而下方法)
- Qt VTK交互风格的信号到小部件
- 芬威克树(BIT).找到具有给定累积频率的最小索引,单位为 O(logN)
- 如何在Qt窗口小部件中使用QStringView(或QStringRef)
- 使用递归的数组的最小值.这是怎么回事
- 是否可以通过C++扩展强制多个python进程共享同一内存
- 在cuda线程之间共享大量常量数据
- 为什么在浮点中从大到小会引入更多的误差
- 如何从具有移动语义的类对象中生成共享指针
- 在c代码之间共享数据的最佳方式
- 多线程减慢程序速度:无错误共享,无互斥锁,无缓存未命中,无小工作量
- 加载Qt共享库时,Qt小部件不会显示
- C++ 创建小部件数组
- 使用Windows共享内存共享小数据
- 具有共享边界的最小连接区域的图论算法
- 如何与其他小部件共享共享小部件指针
- 创建最小共享库
- 地图的密钥是否可以与部分值共享?