C++ QGroupBox已单击/焦点
我的应用程序中有两个组框,它们放在同一个父窗口小部件上,每个组框都提供了QwtPlot的子实例。用户可以通过鼠标操作绘图(缩放、平移…) 我想跟踪用户当前在哪个组框中工作(即焦点组框)。然而,事件是以标准方式处理的,所以如果用户使用plot,鼠标事件将被该plot使用。我想知道,无论用户对其嵌套小部件执行什么操作,他都在使用特定的groupboxC++ QGroupBox已单击/焦点,c++,qt,qt5,qgroupbox,C++,Qt,Qt5,Qgroupbox,我的应用程序中有两个组框,它们放在同一个父窗口小部件上,每个组框都提供了QwtPlot的子实例。用户可以通过鼠标操作绘图(缩放、平移…) 我想跟踪用户当前在哪个组框中工作(即焦点组框)。然而,事件是以标准方式处理的,所以如果用户使用plot,鼠标事件将被该plot使用。我想知道,无论用户对其嵌套小部件执行什么操作,他都在使用特定的groupbox 有什么建议吗?好的,我找到了解决办法。QGroupBox必须重新实现,例如: class CustomGroupBox : public QGroup
有什么建议吗?好的,我找到了解决办法。QGroupBox必须重新实现,例如:
class CustomGroupBox : public QGroupBox {
Q_OBJECT
public:
CustomGroupBox(QWidget *parent = 0) : QGroupBox(parent);
CustomGroupBox(const QString &title, QWidget* parent = 0) : QGroupBox(title, parent);
signals:
void customReleased();
protected:
void mouseReleaseEvent(QMouseEvent* event) {
emit customReleased();
QGroupBox::mouseReleaseEvent(event);
}
};
然后,我可以将所有分组框的customReleased()连接到一个插槽,该插槽将处理sender()对象并跟踪活动分组框