2012-03-12 196 views
1

我已经使用qtablewidget创建了一个表。该表包含几个按钮。我已将这些按钮的点击事件与功能连接起来。问题是,我想知道发送点击事件的按钮的行和列。 I.E.当用户点击一个按钮时,我想知道它在表格中的位置。我怎么做?如何从qtablewidget中检测单元格中单击的按钮

回答

2

如果你有一些方式本身的按钮之间进行区分,则可以调用

QObject* senderButton = Sender(); 
从插槽内

正在接收信号,以得到一个指针到发送该信号(HTTP对象:/ /doc.trolltech.com/4.7/qobject.html#sender)。

否则你可能想看看

QSignalMapper 

这里有一个例子:http://doc.trolltech.com/4.7/signalsandslots.html#advanced-signals-and-slots-usage

+0

SignalMapper工作。谢谢。 – rwik 2012-03-13 06:36:09

0

您可能需要连接cellClicked信号QTableWidget以获取单元格的行和列。您可能需要测试信号发出的顺序,以确定您是否需要发出按钮信号或直接调用该信号的处理程序。

+1

我上qpushbutton单击单元格,而不是细胞本身的内部。所以cellclicked可能无法正常工作。 – rwik 2012-03-13 03:46:13

+0

你试过了吗? – Karlson 2012-03-13 10:58:01

相关问题