【发布时间】:2018-08-13 11:49:01
【问题描述】:
我有一个网格布局(vtkOpenGLWidget),在里面我将布局分为四个部分。所以,当我点击它时,我想突出显示视口。 这是我的网格布局图像视图:
我将使用此代码突出显示视口 代码:
void QvtkOpenGLWidgetdrag::paintEvent(QPaintEvent *event)
{
QOpenGLWidget::paintEvent(event);
QPainter painter(this);
painter.setPen(QPen(QBrush(Qt::blue), 2));
if (hasFocus())
painter.drawRect(QRect(1, 1, width() - 2, height() - 2));
}
当我单击视口时,它工作正常。但是当我在 Ui-viewer 中选择任何其他模块时,我遇到了问题,然后默认情况下它会显示未选中。但是,我每次都选择了,一旦我将选择另一个视口,然后只有它取消选择并选择下一个视口,反之亦然。
任何帮助对我来说都很重要。 提前谢谢你
【问题讨论】:
-
不要手动调用
paintEvent,例如通过将其连接到点击的信号。 -
请在之后
EDIT使用此代码并发布另一个问题,因为它引入了一个完全不同的问题。还要在您的评论中添加我的答案和例外情况的链接。
标签: c++ qt qgridlayout