我正在做一個小聊天信使程序,它需要用戶加入的聊天頻道列表。爲了用圖形表示這個列表,我列出了QPushButtons
的列表,這些列表代表了不同的頻道。這些按鈕與以下的方法進行,而這也正是我的問題踢:(activePanelContents是保存列表一個QWidget)如何將變量傳遞給QT中的插槽方法?
void Messenger::addToActivePanels(std::string& channel)
{
activePanelsContents = this->findChild<QWidget *>(QString("activePanelsContents"));
pushButton = new QPushButton(activePanelsContents);
pushButton->setObjectName("pushButton");
pushButton->setGeometry(QRect(0, 0, 60, 60));
pushButton->setText("");
pushButton->setToolTip(QString(channel.c_str()));
pushButton->setCheckable(true);
pushButton->setChecked(false);
connect(pushButton, SIGNAL(clicked()), this, SLOT(switchTab(channel)));
}
的一點是,每個按鈕應該調用switchTab(string& tabname)
方法當點擊時,包括特定頻道的名稱作爲變量。這個實現雖然不起作用,但我一直無法找到如何正確地做到這一點。
注意的警告使用的QObject ::發件人之前在您的代碼 – 2011-02-08 00:01:58
不知道爲什麼您的帖子被濫用,但無論如何感謝。你幫了很多 – parsecer 2016-04-23 16:27:19