我使用下面的win API代码来捕获Windows桌面中的活动工作窗口标题。在Qt中有没有替代Ubuntu平台的实现?
DispatchQueue.main.asyncAfter(deadline: .now() + 0.0) {
print("test", self.presentingViewController)
}
答案 0 :(得分:1)
如果您想获得Qt应用程序活动窗口标题,可以使用
QApplication::activeWindow()->windowTitle();
如果没有,您可以使用QProcess运行Ubuntu命令。这是xdotool或(如果你不想安装任何东西)这个命令:
xprop -id $(xprop -root _NET_ACTIVE_WINDOW | cut -d ' ' -f 5) WM_NAME | awk -F '"' '{print $2}'
答案 1 :(得分:0)
我使用下面的代码。我们需要在ubuntu中安装xdotool
QProcess process(this);
process.setProgram(“xdotool”);
process.setArguments(QStringList() << “getwindowfocus” << “getwindowname”);
process.start();
while(process.state() != QProcess::NotRunning)
qApp->processEvents();
QString title = process.readAll();