有的时候我们需要通过拖拽选项去播放视频,然后发现我们创建的那个widget没有窗口句柄,使用spy++也不能正确的找到!
这个时候,我们需要在创建窗体的后面加一行winid();
比如:
MyWIdget::MyWidget(QWidget* parent)
{
QPushButton* pbutton = new QPushbutton(this);
}
这样的话 你用spy++只能找到MyWidget这一个窗口句柄,就算你在MyWidget里面再增加其他的widget,也都只有一个!
MyWIdget::MyWidget(QWidget* parent)
{
QPushButton* pbutton = new QPushbutton(this);
pbutton->winid();
}
这样就可以看到两个窗口句柄,通过spy++即可查看到!
本文介绍如何在Qt应用程序中通过调用winId()方法为子控件分配独立的窗口句柄,以便使用spy++等工具进行调试。通过示例代码展示了在创建控件之后立即调用winId()方法的重要性。
714

被折叠的 条评论
为什么被折叠?



