完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
使用了QT几个月,都是在别人的基础上对代码进行修改,因此想通过自己平时做一些小项目来系统的学习QT,记录自己的一点一滴。这次实现一个简易的计算器,界面朴实无华平平无奇,低调中透露出一丝不羁,可以说是计算器中的拖拉机,功能也是未够完善,只能实现简单的加减乘除,开根号求倒数,但这个项目的目的不是真的做一个计算器,而是熟悉信号槽和信号匹配器的使用。
计算器的界面如下图所示: 其中信号匹配的的使用方法如下: //在堆上创建对象 QSignalMapper *signalMapper = new QSignalMapper(this); //将按键对象与信号匹配器连接 connect(ui->pushButton,SIGNAL(clicked()),signalMapper,SLOT(map())); //将按键与要发送的字符串匹配 signalMapper->setMapping(ui->pushButton,ui->pushButton->text()); //连接信号匹配器与槽函数,修改lineEdite的内容 connect(signalMapper,SIGNAL(mapped(QString)),this,SLOT(slot_fuction(QString))); void classname::slot_fuction(QString str) { //----------- } 当要大量处理一系列相似的控件时,例如要处理计算器的多个按键,可以用如下方法: QList foreach (QPushButton *btns, Btins) { //.... } 于是可以结合信号匹配器,通过遍历按键来进行信号与槽的绑定。 |
|
|
|
只有小组成员才能发言,加入小组>>
3314 浏览 9 评论
2995 浏览 16 评论
3494 浏览 1 评论
9059 浏览 16 评论
4088 浏览 18 评论
1180浏览 3评论
605浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
599浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2335浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1896浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 20:54 , Processed in 1.159285 second(s), Total 77, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号