多个按钮插槽

A slot for multiple buttons

本文关键字:插槽 按钮      更新时间:2023-10-16

我的应用程序中有两个浏览按钮。我需要为这两个按钮执行browseButtonClickHandler()函数。但问题是,我怎么知道哪个按钮被点击了?我需要将浏览的文件夹粘贴到文本字段。通过UI编辑器创建信号和槽。我已经为两者分配了函数和它的工作。但唯一的困难是识别按钮。

使用QObject * QObject::sender ()来了解信号的来源

您还可以查看QSignalMapper。在文件中,他们提到了一个与你的问题相同的例子

http://doc.qt.digia.com/4.6/qsignalmapper.html细节

使用QButtonGroup。也许这个链接能帮上忙。
http://doc.qt.io/qt - 4.8 -/- qbuttongroup.html # id

我建议创建一个子类的按钮类,它有一个索引字段和一个虚拟函数,给出这个索引值。我假设在browseButtonClickHandler()中,您得到一个指向按钮的指针,因此将其转换为按钮子类并获得索引值。