gpt4 book ai didi

c++ - 你如何在 Qt 中获得一个小部件的 child ?

转载 作者:IT老高 更新时间:2023-10-28 21:38:04 25 4
gpt4 key购买 nike

我正在通过 Qt 的 KeyPress 函数模拟应用程序的 keyPresses。所有 KeyPresses 工作正常。但是,当我传递一个应该按下当前事件窗口的 OK 按钮的 QT::Key_Enter 或取消按钮的 QT::Key_Cancel 时,它什么也不做.

我在想也许,因为这些按钮没有焦点,而父窗口本身有焦点。你如何得到一个窗口的 child ?还是找到它上面的 OK 或 Cancel 按钮,这样您就可以将其设置为 activeWindow,然后成功传递 KeyPresses?

我有:

QWidget *pWin = QApplication::activeWindow;
QObjectList *pList = pWin->children();
//how do you iterate through the list and find the OK or Cancel button?

最佳答案

您可以使用 findChild()使用对象名称的函数来获取特定的 child 。

您也可以使用 findChildren() 来获取所有具有相同名称的 child ,然后使用 foreach()QListIterator 遍历列表.

要获得按钮,您可以尝试:

QPushButton* button = pWin->findChild<QPushButton*>("Button name");

关于c++ - 你如何在 Qt 中获得一个小部件的 child ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4311352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com