Qt Creator和VS2010中添加槽信号_差异与详解
来源:互联网 发布:ecshop 查看sql语句 编辑:程序博客网 时间:2024/04/29 02:35
1.前言:
Qt 的窗口部件通过发射信号(signal)来表明一个用户的动作已经发生了或者是一个状态已经改变了。如点击一个QPushButton时,按钮会发送一个clicked()信号,信号可以与函数(在qt里称做槽slot)相连接。可以把信号理解为MFC里的事件。信号与槽的关系,我们也可以类比为为,事件驱动关系。
利用QT做UI设计的一般分为两派,发烧派采用Qt Creator设计,平台友好,视觉冲击强,流线式设计。微软派采用Visual Studio开发,此派深受微软毒害~ 已经难以自拔~
就个人而言,属于微软派,用久了想脱身也不容易了。
这里需要面对一个问题就是VS与Qt Creator中添加“信号与槽”是不一样的,需要注意。
2.Visual Studio2010中添加槽
Step1:创建对话框窗口,选择“创建界面”复选框
2.头文件中添加“槽声明”
#ifndef ADDSOLTTOVS_H#define ADDSOLTTOVS_H#include <QtWidgets/QDialog>#include "ui_addsolttovs.h"class AddSoltToVs : public QDialog{Q_OBJECTpublic:AddSoltToVs(QWidget *parent = 0);~AddSoltToVs();private:Ui::AddSoltToVsClass ui;////////槽声明public slots:void Btn_Click();};#endif // ADDSOLTTOVS_H3.源文件中进行“槽实现”(注意添加消息盒子的头文件)#include "addsolttovs.h"#include <QMessageBox>AddSoltToVs::AddSoltToVs(QWidget *parent): QDialog(parent){ui.setupUi(this);}AddSoltToVs::~AddSoltToVs(){}void AddSoltToVs::Btn_Click(){QMessageBox msg;msg.setText("Hello Wiorld!");msg.exec();}4.打开UI,进入Qt Designer,建立槽注意:别把槽的函数名写错了注意:一定要把Designer关闭了再去调试我们的VS主程序
5.运行结果
没错,这就意味着,我们成功了。
3.Qt Creator中添加槽过程
诶呀。支持Creator的发烧友们欢呼吧~ 的确,很简单~
1.打开 Qt Creator新建一个项目MyQtDemo
2.点击mainwindow打开设计窗体在窗体上添加一个PushButton。点击右键先把转到槽
3.打开转到槽窗体
4.点击clicked()点击确定,在mainwindow.cpp里添加QMesageBox
#include "mainwindow.h"#include "ui_mainwindow.h"#include <QMessageBox>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow){ ui->setupUi(this);}MainWindow::~MainWindow(){ delete ui;}void MainWindow::on_pushButton_clicked(){ QMessageBox msg; msg.setText("Hello Word !"); msg.setStandardButtons(QMessageBox::Ok|QMessageBox::Cancel); msg.setDefaultButton(QMessageBox::Cancel); msg.exec();}5.运行即可。
0 0
- Qt Creator和VS2010中添加槽信号_差异与详解
- Qt Creator 和在 vs2010 里 怎么添加信号和槽
- 【QT】:QT中信号与槽详解
- 在Qt Creator 和在 vs2012 里添加信号和槽
- 在Qt Creator 和在 vs2012 里添加信号和槽
- 在Qt Creator 和在 vs2012 里添加信号和槽
- 在Qt Creator 和在 vs2012 里添加信号和槽
- 在Qt Creator 和在 vs2012 里添加信号和槽
- qt creator 信号与槽 代码实现 (二)
- QT Creator 信号与槽(配置连接)
- Qt creator信号与槽的一种方法实现
- Qt Creator中添加菜单栏
- 在VS2013中添加QT的信号和槽功能
- Qt 信号和槽详解
- qt学习_自定义信号与槽
- Qt笔记_信号和槽
- Qt信号与槽机制详解
- QT信号与槽的机制详解
- 386. Lexicographical Numbers
- PHP源码安装开启GD库并支持JPEG
- 敏捷开发系列学习总结(5)——这几招搞定团队协同Coding
- Retrofit用法详解
- jQuery中的ajax的优势和不足
- Qt Creator和VS2010中添加槽信号_差异与详解
- (DT系列四)驱动加载中, 如何取得device tree中的属性
- MQ深入之死信队列
- 洛谷 P1169 [ZJOI2007]棋盘制作
- VMware Workstation 12 Player CPU占用100%
- (DT系列五)Linux kernel 是怎么将 devicetree中的内容生成plateform_device
- offsetof,container_of
- Jsonp跨域
- 20161109 ArrayList set add方法 替换对应位置数据