如何在动态创建的QWidget上安装eventFilter
How to install eventFilter on dynamically created QWidget?
我只有一个QMainWindow与主窗口。UI中有表格,按钮等。从一个按钮,我想动态地创建小部件,并设置一个evenFilter在它上面。
QWidget dialog = new QWidget();
dialog->installEventFilter(this);
当我编译程序时,它说QObject::installEventFilter(): Cannot filter events for objects in a different thread.
我如何将这个小部件添加到线程与其他qobject或什么是这个问题的最佳解决方案?
你不应该从非gui线程创建gui小部件。
创建QWidget的子类并安装eventFilter,放入内部信号返回结果。
然后从你的线程发送信号到主线程插槽来创建这个QWidget dialog = new MyWidget()
并按你想要的使用
相关文章:
- 在Ubuntu 16.04上安装Cilk时出现问题
- 在CMakeLists.txt的安装功能中使用.cmake文件有什么用
- C++:如何在CLion IDE中安装Boost
- 安装opencv失败-粘贴CMakeError.log的内容
- 在cygwin中测试新的boost安装时出现cpp错误
- 如何在QT Creator上将QWidget声明为继承类的对象
- 有人安装"IITB Simplecpp in mac"吗?
- 我可以在 Arduino 的库文件夹之外安装库吗?
- Mingw-64 在构建和安装后不会编译 openCV 代码
- 为什么构建目录中新构建的共享库与安装目录中的副本具有不同的依赖项集?
- 安装 libc++ 时出现问题
- QWidget::p aintEngine:不应再在 QTreeWidget 派生类中调用
- 安装MinGW后C++编译器不起作用?
- 介子复制/安装头文件到输出目录并保持文件夹结构
- 无法安装 R 包 "nloptr"(Ubuntu 16.04 上的 R3.6.2) - C++编译器问题
- 如何在 Ubuntu 上安装 OpenCV for C/C++
- 检查是否安装了 windows10 C++
- 安装 psutil 和为 pypy 配置期间出错
- 将一个 QWidget 链接到另一个新创建的 QWidget
- 如何在动态创建的QWidget上安装eventFilter