问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求教编程高手教我如何用Qt实现两窗口切换,比如点击窗口A后,窗口B弹出,而窗口A自动关闭...

发布网友 发布时间:2022-04-23 02:05

我来回答

1个回答

热心网友 时间:2023-10-11 02:17

//窗口A
#ifndef A_H
#define A_H

#include <QWidget>
#include <QMouseEvent>
class A : public QWidget
{
Q_OBJECT
public:
explicit A(QWidget *parent = 0);

signals:
void showB(bool isShow);
protected:
void mousePressEvent(QMouseEvent *event);
public slots:
};
#endif // A_H
//A.cpp
#include "a.h"
A::A(QWidget *parent) :
QWidget(parent)
{
this->setWindowTitle("我是A");
}
void A::mousePressEvent(QMouseEvent *event){
if(event->button()==Qt::LeftButton){
emit showB(true);
this->deleteLater();
}
}
//窗口B
#ifndef B_H
#define B_H

#include <QWidget>

class B : public QWidget
{
Q_OBJECT
public:
explicit B(QWidget *parent = 0);
signals:
public slots:
void showB(bool isShow);
};
//B.cpp
#include "b.h"
B::B(QWidget *parent) :
QWidget(parent)
{
this->setWindowTitle("我是B");
}
void B::showB(bool isShow){
if(isShow)
this->show();
else
this->deleteLater();
}
//main.cpp
#include <QtGui/QApplication>
#include <QTextCodec>
#include "a.h"
#include "b.h"
int main(int argc, char *argv[])
{
QApplication x(argc, argv);
QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForLocale(QTextCodec::codecForName("UTF-8"));
QTextCodec::setCodecForCStrings(QTextCodec::codecForName("UTF-8"));
B *b=new B();
A *a=new A();
QObject::connect(a,SIGNAL(showB(bool)),b,SLOT(showB(bool)));
a->show();
return x.exec();
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
苹果电脑电池充不进电苹果电脑充不进去电是怎么回事 苹果电脑不充电没反应苹果电脑充电指示灯不亮充不了电怎么办 狗狗更加忠诚护家、善解人意,养一只宠物陪伴自己,泰迪能长多大... 描写泰迪狗的外形和特点的句子 国外留学有用吗 花钱出国留学有用吗 !这叫什么号 百万医疗赔付后是否可以续保 前一年理赔过医疗险还能续保吗? 医疗住院险理赔后还能购买吗? 关于袋鼠有哪些介绍? 袋鼠是什么样子? 怎么加入美团送外卖? 白醋能用来做什么? qt中如何创建2个窗口,点击窗口a上按钮打开窗口b;有没有办法让窗口a知道窗口b是否已经关闭! 我想去美团外卖做送餐员,怎么加入? Qt中怎么样按一下按钮后,实现关闭当前窗口,打开另一个窗口 我想送美团外卖 qt怎么让两个或者更多的打开的窗口整齐的并排排列 qt如何打开多个网页窗口 我想送美团外卖应该下载什么软件? 如何同时打开两个qt creator窗口 我想加入美团外卖送餐,怎么加入 qt中如何创建2个窗口,点击窗口a上按钮打开窗口b,在b关闭前无法对a操作 我想加入美团平台送外卖 上美团跑外卖需要什么条件? 怎么看新加坡富时A50指数 请问新加坡股指期货新华富时A50指数在那能找到? 中国A50指数有人了解吗?哪里可以交易? a50指数哪里可以交易?需要了解什么 袋鼠的英语怎么说 我想送美团外卖怎么加入 公众号的运营者什么意思 袋鼠的生活习惯 Qt Creator怎么连接两个窗口 充错话费如何退回?对方是空号,可以退还吗? 梦见自已想死去的亲人嚎嚎大哭泣不成声? QT多窗口切换的问题 话费充错号码对方停机可以追回来吗 我想加如美团送外卖要怎么办 白醋适合什么菜? 我充值话费充到其他号码上了,并且对方号码是停机状态,可以退回来吗 QQ堂3.0 怎么可以开2个窗口 充话费充错了怎么办对方是欠费停机 梦见抱着已故亲人哭是怎么回事? 白醋可以用来做什么菜? 袋鼠的介绍 话费充错了,对方一直关机,怎么办 qt实现多窗口变成问题 我话费充错了但是对方已经停机了你们移动应该把钱退还给我因为别人停机了但是钱还是充到你们移到了呀?