我目前拥有一个本地的iOS GUI和一个Qt-GUI。我正在尝试从一个切换到另一个。
明确一下:当我在本地GUI上单击按钮时,我希望Qt-GUI出现,反之亦然。
我已经找出需要添加哪些库来使用Qt-Stuff。我在AppDelegate.mm
文件中创建了一个QApplication
:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: (NSDictionary *) launchOptions {
// receive int argc, and char** argv for the QApplication.
_qApp = new QApplication(_argc, _argv);
}
此外,我的Qt应用程序目前看起来是这样的:
void createQtGUI() {
QPushButton* btn = new QPushButton("Some Button");
QLabel* lbl = new QLabel("QTGui");
QVBoxLayout* layout = new QVBoxLayout();
layout->addWidget(lbl);
layout->addWidget(btn);
QWidget* window = new QWidget();
window->setLayout(layout);
window->show();
}
当我在本机iOS GUI中按下按钮时,我会调用ViewController.mm
中的createQtGUI
方法。代码运行时没有抛出任何错误,但是:
Qt-GUI未显示。应用程序仍显示本机GUI而没有切换到Qt-GUI。
有人有什么想法如何解决这个问题吗?
QApplication::exec()
方法来启动Qt事件循环。 - TomasQApplication::processEvents()
。Qt 事件只需进行处理。 - Tomas