QT 一个入门级基础程序

QT 一个入门级基础程序

1.程序实现目标

打开一个窗口,里面有两个按钮,第一个按钮按下后打开第二个按钮,第二个按钮按下后关闭第二个窗口
涉及内容:1.显示窗口 2.qpushbutton组件的使用 3.信号量和槽

2.代码

这里用的是QMainWindow ,也可以用QWidget,效果相同

#include <QApplication>
#include <QDebug>
#include <qpushbutton.h>
#include <QObject>
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "qpushbutton.h"
#include "QDebug"
#include <QWidget>


int main(int argc, char *argv[])
{
    QApplication a(argc, argv);//应用程序对象,a有且仅有一个
    QMainWindow   w1;
    QMainWindow   w2;
    qDebug("begin");

    w1.setWindowTitle("MainWindow");
    w2.setWindowTitle("SecWindow");
    w1.setFixedSize(1000,400);//设置窗口大小并锁死,不允许更改
    w2.setFixedSize(1000,1000);

    QPushButton *btn1= new QPushButton("open",&w1);//按照控件方法创造按钮,第一个参数名字,第二个设置父亲是当前
    btn1->move(100,100);//设置按键位置
    btn1->resize(80,60);//设置按键大小
    QPushButton *btn2= new QPushButton("close",&w1);
    btn2->move(400,100);//设置按键位置
    btn2->resize(80,60);//设置按键大小

    QObject::connect(btn1, &QPushButton::clicked, &w2, &QMainWindow::show);
    QObject::connect(btn2, &QPushButton::clicked, &w2, &QMainWindow::close);

    w1.show();

    return a.exec();//进入消息循环机制,代码阻塞,类似system("pause");
}

3.实现效果

在这里插入图片描述
按下open后打开第二个窗口
在这里插入图片描述
按下close就关闭第二个窗口了,就不演示了

4.一些容易出错的地方

1.刚开始编译器死活识别不到connect函数,后来发现是要加上QObject::,加上后就能正常识别了
2.要注意一些地方参数需要指针类型,记得加&取址符

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值