|
不太明白你的意思。
给你个例子看下。
2个界面,通过按下按钮发送信号切换界面。
main.cpp
Widget和Form都是界面类。- int main(int argc, char *argv[])
- {
- QApplication a(argc, argv);
- Widget w;
- w.setVisible(true);
- Form f;
- f.setVisible(false);
- QObject::connect(&w,SIGNAL(send_show_f()),&f,SLOT(show_f()));
- QObject::connect(&f,SIGNAL(send_show_w()),&w,SLOT(show_w()));
- return a.exec();
- }
复制代码 widget.cpp
构造函数- Widget::Widget(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::Widget)
- {
- ui->setupUi(this);
- connect(ui->pushButton,SIGNAL(clicked()),this,SIGNAL(send_show_f()));
- }
复制代码 槽函数和按钮槽函数- void Widget::on_pushButton_clicked()//按钮按下
- {
- this->setVisible(false);
- }
- void Widget::show_w()//接收到信号,执行槽函数显示界面
- {
- this->setVisible(true);
- }
复制代码 form.cpp- Form::Form(QWidget *parent) :
- QWidget(parent),
- ui(new Ui::Form)
- {
- ui->setupUi(this);
- connect(ui->pushButton,SIGNAL(clicked()),this,SIGNAL(send_show_w()));
- }
- Form::~Form()
- {
- delete ui;
- }
- Form::show_f()
- {
- this->setVisible(true);
- }
- void Form::on_pushButton_clicked()
- {
- this->setVisible(false);
- }
复制代码 |
|