写一个基于QT的Android app ,实现点击按钮切换另一个窗口的代码
时间: 2024-05-06 19:16:39 浏览: 184
以下是一个基于QT的Android app实现点击按钮切换另一个窗口的代码:
首先,在main.cpp中添加以下代码,以确保在Android上正确地启动应用程序:
```c++
#include <QtAndroid>
#include <QAndroidJniEnvironment>
#include <QAndroidJniObject>
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QtAndroid::androidActivity().callMethod<void>("requestPermissions", "(Ljava/lang/String;I)V", QAndroidJniObject::fromString("android.permission.WRITE_EXTERNAL_STORAGE").object<jstring>(), 1);
return app.exec();
}
```
然后,在主窗口的ui文件中添加一个按钮,并将其命名为btnSwitch,以便在代码中引用它。接下来,在主窗口的.h文件中添加以下槽函数声明:
```c++
private slots:
void on_btnSwitch_clicked();
```
然后在.cpp文件中实现该槽函数:
```c++
void MainWindow::on_btnSwitch_clicked()
{
SecondWindow *secondWindow = new SecondWindow();
secondWindow->show();
this->close();
}
```
在此代码中,我们首先创建了一个指向第二个窗口的指针,然后显示它并关闭当前窗口。
最后,在第二个窗口的ui文件中添加一个按钮,并将其命名为btnBack,以便在代码中引用它。然后在.cpp文件中实现该槽函数:
```c++
void SecondWindow::on_btnBack_clicked()
{
MainWindow *mainWindow = new MainWindow();
mainWindow->show();
this->close();
}
```
在此代码中,我们创建了一个指向主窗口的指针,然后显示它并关闭当前窗口。
现在,当用户点击主窗口的btnSwitch按钮时,应用程序将切换到第二个窗口。当用户点击第二个窗口的btnBack按钮时,应用程序将切换回主窗口。
阅读全文