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

品牌型网站建设解决方案湖北网站推广

品牌型网站建设解决方案,湖北网站推广,做邀请函好的网站,快速建设网站工具文章目录 Qt Creater界面介绍Qt信号与槽机制原理(Signal & Slot)信号与槽实战 Qt Creater界面介绍 【Qt工具】 Qt Assistant(Qt助手) Qt Designer(Qt设计师) Qt Example and Demos(QT演示程…

文章目录

  • Qt Creater界面介绍
  • Qt信号与槽机制原理(Signal & Slot)
    • 信号与槽实战

Qt Creater界面介绍

在这里插入图片描述
在这里插入图片描述

【Qt工具】
Qt Assistant(Qt助手)
Qt Designer(Qt设计师)
Qt Example and Demos(QT演示程序与案例)
Qt Linguist(Qt语言)

在这里插入图片描述
在这里插入图片描述
QMainWindow(主窗口类):工具栏、菜单栏、状态栏,类似应用程序的标准窗口
QWidget(可视界面):创建界面对各种界面组件都可以支持
QDialog(对话框类):创建工程基于对话框的界面

在这里插入图片描述

Qt信号与槽机制原理(Signal & Slot)

1.信号(singal):信号本质是事件。信号展现方式就是函数。当某一个事件发生滞后,则发出一个信号(signal)
2.槽(slot):对信号响应的函数,槽就是一个函数。

槽函数与普通函数的区别:
槽函数可以与一个信号关联,当信号被发射的时候,关联的槽函数被自动执行处理。信号与槽关联是使用QObject::connect()函数进行实现

在这里插入图片描述

  • 信号函数只需要声明(不需要实现),而槽函数需要实现
  • 信号和槽机制底层是通过函数之间进行相互调用实现的。每个信号都可以用函数来表示,成为信号函数。每个槽也可以用函数表示,称为槽函数。
  • 槽函数可以用public slots/protected slots/private slots修饰。signals和slots是Qt开发中在C++语言之上扩展的关键词,专门用于指明信号函数和槽函数。
  • QOject::connect(发送信号的对象object1,信号signal,信号接收者object2,槽函数slot)

3.信号与槽机制连接方式

  • 一个信号可以跟另一个信号相连
  • 同一个信号可以跟多个槽相连
  • 同一个槽可以响应多个信号

4.信号和槽机制优势:松散耦合
一个类若要支持信号和槽,必须从QObject的子类继承。Qt信号和槽机制不支持对模板的使用

5.信号与槽机制效率:增加对象之间的灵活性,但是也会损失一些性能。通过传递一个信号来调用槽函数将会比直接调用非虚函数运行速度慢,主要原因:

  • 多线程的时候,信号可能需要排队等待
  • 编组/解组传递的参数
  • 安全地遍历所有的关联
  • 需要定位接收信号的对象

信号与槽实战

头文件

#ifndef DIALOG_H
#define DIALOG_H#include <QDialog>
#include <QGridLayout>
#include <qlabel.h>
#include <qpushbutton.h>
#include <qlineedit.h>QT_BEGIN_NAMESPACE
namespace Ui {
class Dialog;
}
QT_END_NAMESPACEclass Dialog : public QDialog
{Q_OBJECTpublic:Dialog(QWidget *parent = nullptr);~Dialog();private:Ui::Dialog *ui;private:QLabel *lab1,*lab2;QLineEdit *lEdit;QPushButton *pbt;
private slots:void CalcBallVolume();};
#endif // DIALOG_H

源文件

#include "dialog.h"
#include "ui_dialog.h"const static double PI=3.1415;Dialog::Dialog(QWidget *parent): QDialog(parent), ui(new Ui::Dialog)
{ui->setupUi(this);//提示用户输入半径lab1=new QLabel(this);lab1->setText(tr("请输入圆球的半径"));//显示计算圆球体积的结果lab2=new QLabel(this);//创建一个编辑框控件(接受用户输入的半径值)lEdit=new QLineEdit(this);//创建命令按钮pbt=new QPushButton(this);pbt->setText(tr("计算圆球体积"));//表格布局QGridLayout *mLay=new QGridLayout(this);mLay->addWidget(lab1,0,0);mLay->addWidget(lEdit,0,1);mLay->addWidget(lab2,1,0);mLay->addWidget(pbt,1,1);connect(lEdit,SIGNAL(textChanged(QString)),this,SLOT(CalcBallVolume()));}Dialog::~Dialog()
{delete ui;
}
void Dialog::CalcBallVolume(){ //计算圆球的体积bool isLoop;QString tempStr;QString valueStr=lEdit->text();int valueInt=valueStr.toInt(&isLoop);double dVSum=4.0/3.0*PI*valueInt*valueInt;lab2->setText(tempStr.setNum(dVSum));
}

在这里插入图片描述

http://www.dtcms.com/wzjs/277919.html

相关文章:

  • 前端做学校网站教务湖南正规seo优化报价
  • 云南网站建设电话云建站
  • 做电影网站赚钱么设计好看的网站
  • wordpress点击图片上传关键词seo教程
  • 区县12380网站建设情况如何让自己的网站排名靠前
  • 游戏网站域名怎么做百度推广平台
  • 做买衣服的网站百度竞价排名危机事件
  • 设计软件排行seo咨询常德
  • 什么网站可以做十万的分期付款百度关键词首页排名服务
  • 免费做电脑网站上海百度推广
  • 做网站和app报价长沙网站se0推广优化公司
  • 网站的运作方式事件营销案例
  • wordpress 大小黑帽seo之搜索引擎
  • 网站的logo怎么换c盘优化大师
  • 做网站如何用代码把字体变大店铺运营方案策划
  • 佛山市做网站的公司专业提升关键词排名工具
  • 室内设计接单网站千川推广官网
  • 网站开发可以用gif吗搜索引擎优化概述
  • 中国建设传媒网seo推广沧州公司电话
  • 廊坊网站建设哪家权威成都seo优化公司
  • 做中英文网站多少钱深圳货拉拉
  • 建大型网站需要多少钱网络营销的重要性
  • 网站建设服务公司哪家好成人短期培训能学什么
  • 网上那些彩票网站可以自己做吗百度手机端排名如何优化
  • 先备案 做网站qq群引流推广平台免费
  • wordpress文章前阅读济南seo外包服务
  • 岭南地区网站建设高端网站优化公司
  • 手机网站模版php源码网站seo外链
  • 山河集团建设有限公司网站拼多多关键词排名查询
  • 渭南市住房和城乡建设局网站怎么在百度上推广自己