是否有可能在绘制其他Qt组件后强制Qt调用paintEvent ?
Is it possible force Qt to call paintEvent after other Qt components are drawn?
我有一个类扩展QWidget并包含一个QLabel (lblBackground)。我也重写了paintEvent函数。
我想在lblBackground上面画一些东西,但是在绘制QLabel之前调用paintEvent方法。因此,我的自定义绘图被覆盖。
有办法改变图纸顺序吗?
把孩子画在他们父母的上面是很常见的事情。也就是说,您可以尝试以下选项之一:
- 扩展QLabel本身来绘制任何你想要的
- 尝试在
QLabel
上设置Qt::WA_TranslucentBackground
标志并具有alpha通道,以便底层父(QWidget
)将通过 发光。 - 如果你只使用
QLabel
绘制一些背景,也许你可以摆脱它,并在QWidget的paintEvent()
中首先绘制所需的背景?
如果您想使用label作为背景,那么只需创建您的自定义小部件作为您的标签的子。可以拆分一些与窗口框架相关的任务,如果有的话(作为标签的父类实现)和绘图/控件等(作为标签的子类)。
相关文章:
- 如何从其他类n个Qt C++调用QTimer?
- 在从Qt调用的Python脚本中导入OpenCV崩溃
- Qt 调用具有 1 个以上参数的 java 方法
- QDialog 继承类的 Qt 调用成员函数
- 从QT调用JavaScript函数,并未显示输出
- 如何从C++/Qt调用QtActivity中的非静态Java方法
- Qt:调用终端+脚本的QProcess
- 从Qt C++调用Fortran函数
- 从Qt调用C++函数(插槽不起作用)
- 从Qt C++调用Java函数
- 扩展 QWidget 上的 Qt/C++ 调用函数
- Qt 调用在发布模式下失败
- QT/c++调用父级方法的最佳方法
- 为什么我不能从基类插槽Qt调用虚函数
- Qt:调用QEventLoop::exec后死锁
- QT调用函数在不同的源代码
- Qt调用外部Python脚本
- Qt调用具有自定义QObject类型的qml函数
- Qt 5.2调用QTableWidget::update不会导致QTableWidget:paintEvent
- 只有当两个信号都发出时才调用Qt -调用槽