<学习QT>项目一、简易计算器

  使用了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<QPushButton *> Btins;
foreach (QPushButton *btns, Btins)
{
   //....  
}

  于是可以结合信号匹配器,通过遍历按键来进行信号与槽的绑定。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值