我正在使用 Qt 和 C++ 编写一个简化的计算器,用于学习目的。每个数字都是一个 QPushButton,它使用相同的插槽来修改用作显示的 lineEdit 小部件中的文本。
该插槽使用 sender() 方法来确定按下了哪个按钮,因此正确的数字将被写入显示小部件。
为了让所有按钮都能正常工作,我必须为每个按钮编写一个连接,有点像这样:
connect(ui->button1, SIGNAL(clicked()), this, SLOT(writeNum()));
由于它们都使用相同的插槽,唯一改变的是正在使用的按钮,因此下一个发送者将是ui->button2
, ui->button3
,依此类推。我的问题是,有没有办法减少定义的连接数量?
编辑:这是一个有用的链接,详细讨论了这个问题。