gpt4 book ai didi

qt - 如何创建多窗口 Qt 应用程序

转载 作者:行者123 更新时间:2023-12-03 23:30:41 33 4
gpt4 key购买 nike

我有一个从 qt 小部件创建的主窗口应用程序。

现在我想在这个主窗口中添加一个子窗口,以便我可以连续切换主窗口和子窗口

最佳答案

首先使用 Qt 创建一个新项目,然后右键单击项目名称 -> 添加新...
并创建一个像这样的图像的新 UI 类:
image one
,
image two
现在你有两种形式。
您需要从 First 中的 Second class 制作一个对象。
first.h:

#ifndef FIRST_H
#define FIRST_H

#include <QMainWindow>
#include <second.h>
#include <QTimer>

namespace Ui {
class First;
}

class First : public QMainWindow
{
Q_OBJECT

public:
explicit First(QWidget *parent = 0);
~First();

private slots:
void on_pushButton_clicked();
void changeWindow();

private:
Ui::First *ui;
Second *second;
QTimer * timer;
};

#endif // FIRST_H
first.cpp:
#include "first.h"
#include "ui_first.h"

First::First(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::First)
{
ui->setupUi(this);

second = new Second();
timer = new QTimer();
connect(timer,&QTimer::timeout,this,&First::changeWindow);
timer->start(1000); // 1000 ms
}

First::~First()
{
delete ui;
}

void First::changeWindow()
{
if(second->isVisible())
{
second->hide();
this->show();
}
else
{
this->hide();
second->show();
}
}

void First::on_pushButton_clicked()
{
second->show();
}
first.pro:
QT       += core gui 

greaterThan(QT_MAJOR_VERSION, 4): QT += widgets

TARGET = First
TEMPLATE = app


SOURCES += main.cpp\
first.cpp \
second.cpp

HEADERS += first.h \
second.h

FORMS += first.ui \
second.ui
First form ui

关于qt - 如何创建多窗口 Qt 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45009919/

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