QT中的sender函数,result函数

嗨!老铁们我又回来了,优化个项目搞死我了,终于搞定了!!!

在这个项目中还是学了点东西的,我感觉比较重要的记下来跟大家分享,嘿嘿嘿。

一、背景:在多个界面下的每个label,LineEdit,后面添加删除按钮。
二、问题:添加了无数个按钮之后,点击按钮不知道是点击的哪个按钮
三、这时候就可以用到sender()函数了。

在new出按钮之后每个按钮绑定的槽函数里面用到:

	QPushButton  *btn=qobject_cast<QPushButton*>(sender());
	这个btn就是当前你点击的按钮,就可以对它操作了。

四、result函数的背景:在点击按钮之后弹出一个新的界面,对原界面的QLabel,QLineEdit进行修改,新界面有确定,取消按钮,在点击确定按钮的时候进行保存的时候会用到result函数,点击取消不进行操作,

新界面ok按钮与cancel按钮的槽函数:

void NewWindows::slotOk()
{
	this->accept();//返回值为1
	this->close();
}
	
void NewWindows::slotCancel()
{
	  this->reject();//返回值为0
	  this->close();
}

在原来界面的按钮的槽函数中:

QPushButton  *btn=qobject_cast<QPushButton*>(sender());
btn->newWindows = new NewWindows();
btn->newWindows->exec();//这里用的是exec函数才管用,我不知道show函数这里为什么不起效果,望知道的大佬告知。

if(btn->newWindows ->result() == 1)
{
		.............//点击新窗口ok之后对原窗口的操作
}
  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值