Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个verticalLayout每行有一个按钮的三个标签。当我单击每个按钮时,事件
verticalLayout
button_clicked() { }
正在开火。此事件适用于所有按钮,即当我单击每个按钮时,都会调用此函数。现在,当我单击每个按钮时,我想要该按钮在该删除中的同一行。我怎样才能做到这一点?首先必须是一个唯一值,我检测到哪个按钮被单击,其次我必须删除该行,但我知道如何。任何想法?
使用评论中提供的其他数据重新回答:
您可以将所有按钮连接到同一个插槽,然后使用该sender()方法来识别谁在触发信号:
sender()
void MyClass::button_clicked() { QAbstractButton* button = qobject_cast<QAbstractButton*>(sender()); if ( !button ) { return; // not called from a button. } button->setText("Clicked"); }