在Qt中,可以使用QApplication::topLevelWidgets()
函数获取当前应用程序的所有顶级窗口。然后,可以遍历这些顶级窗口,通过QWidget::windowTitle()
函数获取每个窗口的标题,并与目标标题进行比较。
以下是一个示例代码片段:
#include <QApplication>
#include <QDebug>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
const QString targetTitle = "目标窗口标题";
QList<QWidget*> topLevelWidgets = qApp->topLevelWidgets();
for (QWidget* widget : topLevelWidgets) {
if (widget->windowTitle() == targetTitle) {
// 找到了目标窗口
qDebug() << "找到了目标窗口:" << widget->objectName();
}
}
return app.exec();
}
请注意,使用FindWindowW
是一种 Windows 平台特定的方法,并且需要调用 Windows API。而在跨平台开发中,推荐使用 Qt 提供的跨平台方案来处理窗口操作和控件查找等任务。
内容由零声教学AI助手提供,问题来源于学员提问