QT入门

72 阅读1分钟

#include "mainwidget.h"

#include<QPushButton>
MainWidget::MainWidget(QWidget *parent)
    : QWidget(parent)
{
    b1.setParent(this);//把一个按钮放到另一个窗体上,this是主窗口
    b1.setText("close");
    b1.move(100,100);
    b2=new QPushButton(this);//把一个按钮放到另一个窗体上,指定父对象
    b2->setText("切换成123并隐藏close");
    connect(&b1,&QPushButton::pressed,this,&MainWidget::close);
    /*&b1:信号发出者,指针类型
     * &QPushButton::pressed:处理的信号。&发送者的类名::信号名字
     * this:信号接收者
     * &MainWidget::close:槽函数,信号处理函数  &接收者的类名::槽函数名字
    */
    /*自定义槽:普通函数的用法
     * QT5:任意的成员函数,普通全局函数,静态函数
     * 槽函数需要和信号一致(参数,返回值)
     * 由于信号都没有返回值,所以,槽函数一定没有返回值
    */
    connect(b2,&QPushButton::released,this,&MainWidget::mySlot);
    connect(b2,&QPushButton::released,&b1,&QPushButton::hide);
    /*信号:短信
     * 槽函数:接收短信的手机
    */
    setWindowTitle(("老大"));
//    this->setWindowTitle("老大");//完全和上一个等价
     b3.setParent(this);
     b3.setText("切换子窗口");
     b3.move(50,50);
//     显示子窗口
//     w.show();
     connect(&b3,&QPushButton::released,this,&MainWidget::changeWin);
     //处理子窗口的信号
     connect(&w,&SubWidget::mySignal,this,&MainWidget::dealSub);//这个函数比较复杂
     resize(400,300);
}
void MainWidget::mySlot()
{
    b2->setText("123");
}
void MainWidget::changeWin()
{
    //子窗口显示
    w.show();
    //本窗口隐藏
    this->hide();
}
void MainWidget::dealSub()
{
    //子窗口隐藏
    w.hide();
    //本窗口显示
    show();
}
MainWidget::~MainWidget()
{
}

关于怎么配置QT5.3的背景色:blog.csdn.net/songyu0120/…

\