当前位置: 首页 > news >正文

宝安网站建设推广百度收录网站的图片

宝安网站建设推广,百度收录网站的图片,平面设计在线制作,苏州网站建设一站通c qt–信号与槽(一) (第三部分) 一.用qt自带的方法添加信号槽 1.第一种 1.如何添加 2.在何处进行绑定 2.第二种 1.如何添加 2.在何处进行绑定 而且会在mainwindow.h中添加槽函数的声明,在mainwindow.cpp中添加槽函数的定义 在mainwindow…

c++ qt–信号与槽(一) (第三部分)

一.用qt自带的方法添加信号槽

1.第一种

1.如何添加

在这里插入图片描述

2.在何处进行绑定

在这里插入图片描述

2.第二种

1.如何添加

在这里插入图片描述

2.在何处进行绑定

在这里插入图片描述

而且会在mainwindow.h中添加槽函数的声明,在mainwindow.cpp中添加槽函数的定义
在mainwindow.h中槽函数的声明

在这里插入图片描述

在mainwindow.cpp中槽函数的定义

在这里插入图片描述

注意:这里的输出是后添加的,测试是否能正常运行的

槽函数是根据名字来进行匹配的,如果将上面的槽函数名字进行更改,就无法调用槽函数了

二.自定义槽函数

在这里插入图片描述

这里我们放入一个新组件用来控制是否能使用“退出主窗口,程序退出”这个组件

1.声明

在mainwindow.h的类中写下面代码

//slots:qt 中修饰槽函数的关键字
private slots:void slots_isButtonDisable(int);//槽函数:返回类型一般都是void,参数列表要和信号保持一致

2.定义

在mainwindow.cpp源文件中写下面代码

void MainWindow::slots_isButtonDisable(int a)
{qDebug()<<a;if(a==0){//不勾选ui->pushButton->setDisabled(false);//设置按钮是否可用}else{//勾选ui->pushButton->setDisabled(true);}}

3.绑定连接(在使用前进行绑定连接即可)

在mainwindow.cpp中的构造函数中写下面代码

//绑定连接
//SIGNAL:指定信号函数的宏,宏参数:信号名和参数列表,如果有参数名字一定要去掉
//SLOT:指定槽函数的宏,宏函数:槽名和参数列表,如果有形参名字一定要去掉
connect(ui->checkBox/*信号的发出者*/,SIGNAL(stateChanged(int)),this/*接收者*/,SLOT(slots_isButtonDisable(int)));

4.设置三态

在mainwindow.cpp中的构造函数中写下面代码

//设置 checkbox多态
ui->checkBox->setTristate(true);//设置之后就有了三种状态选,不选,半选。设置之前只有两种状态,选和不选

三.练习(自定义槽函数)

1.目标

将上一篇博客的弹出框的上的按钮进行改变变成中文,然后根据按下的按键进行相应的操作

2.声明

在mainwindow.h的类中写下面代码

public:QMessageBox m_box;//声明一个弹出框QPushButton *POK;//接按下确定的按键信息QPushButton *PCANCEL;//接按下否定的按键信息

3.对弹出框进行操作

在mainwindow.cpp中的构造函数中写下面代码

m_box.setWindowTitle("提示");//设置标题
m_box.setText("这是我的MessageBox");//设置文本
POK=m_box.addButton("确定",QMessageBox::YesRole);//添加按钮
PCANCEL=m_box.addButton("取消",QMessageBox::NoRole);//添加按钮

4.显示弹出框

在mainwindow.cpp源文件中写下面代码

void MainWindow::on_pb2_clicked()
{qDebug()<<__FUNCTION__;m_box.show();//默认不显示,所以手动调一下show函数
}

如果按下了下面这个按键,就显示弹出框

在这里插入图片描述

5.手写槽函数

1.声明

在mainwindow.h的类中写下面代码

void slots_buttonClicked(QAbstractButton* button);

2.定义

在mainwindow.cpp源文件中写下面代码

void MainWindow::slots_buttonClicked(QAbstractButton* button){if(button==POK){qDebug()<<"确定";}else if(button==PCANCEL){qDebug()<<"取消";}
}

6.进行连接(在使用前进行绑定连接即可)

在mainwindow.cpp中的构造函数中写下面代码

//绑定连接
connect(&m_box,SIGNAL(buttonClicked(QAbstractButton*)),this,SLOT(slots_buttonClicked(QAbstractButton*)));

四.自定义信号

1.声明

在mainwindow.h的类中写下面代码

signals://声明信号的关键字
void signals_sendDate(int,int,QString);//仅声明即可

2.发射信号

点击下面组件进行发射信号

在这里插入图片描述

在槽函数中发射信号

void MainWindow::on_pushButton_2_clicked()
{int a=1;//发射我的自定义信号//emit是一个宏,告诉别人这是一个发射信号emit signals_sendDate(a,1,"你去做一个加法");
}

3.接受信号

1.新创建一个窗口(对话框窗口)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

2.创建窗口(定义一个对象)

在main.cpp写下面代码

Dialog dia;
dia.show();

3.槽函数

1.声明槽函数

在dialog.h的类中写下面代码

public slots:void slots_recvData(int,int,QString);

2.定义槽函数

在dialog.cpp中写下面代码

void Dialog::slots_recvData(int a,int b,QString s){int sum=a+b;QString str=s+" ,结果为: "+QString::number(sum);//拼接字符串ui->label->setText(str);//设置文本
}

4.进行绑定连接(在使用前进行绑定连接即可)

在main.cpp中写下面代码

QObject::connect(&w,SIGNAL(signals_sendDate(int,int,QString)),&dia,SLOT(slots_recvData(int,int,QString)));
http://www.yayakq.cn/news/313633/

相关文章:

  • 网站的关键词可以取消吗大连网站设计报价
  • 我想弄个网站电脑什么网站可以做长图攻略
  • wordpress站标签也打不开中国建设银行官网站企业网银下载
  • 博客类网站建设wordpress 退出登录
  • 北京工程建设交易信息网站杭州建设网官方网站
  • 烟台互网站建设公司名单湖南铁军工程建设有限公司官方网站
  • 软件公司网站模板下载网站系统 建设和软件岗位职责
  • 网站如何做抖音推广网站做防御
  • 网站建设的频道是什么wordpress禁止留言
  • 怎样做校园网站网站域名变了怎么查
  • 报名网站如何做wordpress阅读数随机
  • 直播视频网站如何做深圳建网站服务
  • 网站整体设计流程自己做公司的网站
  • 女孩子学做网站有前途吗怎么注册公司最好
  • 张家港做网站收费标准搜狐快站官网
  • 汕尾网站seo代做设计网站好
  • 做网站如何推广买量沈阳网站建设联系方式
  • 网站平台建设技术基础黑彩网站怎么做
  • 自媒体网站建设建设银行网站用户名忘了怎么办
  • 网站文章被采集深圳网站建设商
  • 做公众号封面图的网站wordpress主题的安装教程
  • wix建站是免费的吗网站做建筑三维图
  • 怎么做娱乐网站h5网站的好处
  • 家具网站建设的前景分析哪里建设网站
  • 做公司网站,哪个程序用的多可信赖的南昌网站建设
  • 西青网站开发wordpress添加新浪微博
  • 龙华网站制作公司电气工程师报考条件
  • 网站用户体验模型三室一厅装修效果图
  • 商城网站 不易优化服装网站建设前景分析
  • 关于信用体系建设的网站重庆seo计费管理