Qt Creater的安装及简单介绍

这里写图片描述

背景

​ 最近操作系统项目要求做一个电梯调度程序,周围同学有的使用Java+Swing,有的使用Js,而我打算使用C++。第一次做有GUI的软件,上网搜索一番后发现了Qt这个工具,评价颇高。

下载安装

​ 幸运的找到了Qt开源社区,上面有很多关于这个工具的资源。下载安装以及初步的学习推荐此教程。值得注意的是,直接在官网上下载安装包是需要注册的,而使用资源下载页面的链接可以绕过注册直接下载,链接如下:

https://download.qt.io/official_releases/qt/5.8/5.8.0/qt-opensource-windows-x86-android-5.8.0.exe

文件很大,推荐使用迅雷下载,速度很快。

或者,qt-opensource-windows-x86-android-5.8.0.exe的百度网盘(密码:vr6h):

https://pan.baidu.com/s/1pvm38_Mk9CnE3VQtBRqeLw

​ 安装后界面如banner所示。共有六个模式,其中的设计模式可以方便的对UI进行可视化设计,简单了解即可上手。

通信机制

​ Qt有一套自己的通信机制,涉及到三个关键字:字:signalslotemit

  • signal(信号)

    被声明为signal的函数用来发射信号,信号可以被槽函数(被声明为slot的函数)接收并触发槽函数。

  • slot(槽)

    被声明为slot的函数可以接受信号函数的信号,值得注意的是,信号和槽之间的对应关系一对多或者多对一都可以,信号没有槽接收也是允许的。信号和槽之间的联系通过connect方法实现,如:

    connect(pointer1, SIGNAL(signalFun(int)), pointer2, SLOT(slotFun(int)));

    上述语句将pointer1所指向的类中的成员信号函数signalFunpointer2所指向的类中的成员槽函数slotFun相关联。槽函数除了可以与信号关联,与普通的函数没有什么区别。注意只有继承于Qt中的定义了信号的类或子类的类的成员函数才能与信号关联,也就是说非类的成员函数是显然不能与信号关联的。

  • emit(释放信号)

    用于释放一个信号。如:

    emit signalFun(a);//a is an int

    上述语句释放了一个signalFun信号,并且携带了参数a,与之关联的槽函数可以收到信号和参数并被触发。当然信号函数也可以不带任何参数。

​ 这套机制有许多优点,它可以在不同的类甚至不同的线程之间进行使用,异常灵活。这对于多线程之间的通讯非常有用。并且它是类型安全的。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值