我想在QTreeWidget中點擊不同的項時,彈出不同的對話框,connect函式如下:connect( this , SIGNAL( itemClicked ( QTreeWidgetItem * , int ) ) , this , SLOT( myfunction ( QTreeWidgetItem * , int ) ) );在myfunction ( QTreeWidgetItem * , int )中,如何得到該QTreeWidgetItem的ID,以便對不同的QTreeWidgetItem進行區分?
uj5u.com熱心網友回復:
void itemClicked ( QTreeWidgetItem * item, int column )這個信號的第二個引數,就是這個項的列數.他是第幾列.這樣就區分了.uj5u.com熱心網友回復:
謝謝樓上的回復不過我的QTreeWidget是用來顯示樹型選單的,列數column只有一列想問一下如何通過行來區分不同的QTreeWidgetItemuj5u.com熱心網友回復:
QTreeWidgetitem* clickedItem = qobject_case<QTreeWidgetItem*>(sender());這個應該能獲得點擊的item吧uj5u.com熱心網友回復:
問題已經解決了如樓上所言,通過得到的QTreeWidgetitem* 就可以區分不同的QTreeWidgetItem了謝謝各位回復uj5u.com熱心網友回復:
QTreeWidgetitem 不是一個qobject 應該使用不了qobject_castuj5u.com熱心網友回復:
QTreeWidgetItem* clickedItem = qobject_case<QTreeWidgetItem*>(sender());1>.\Control\TreeList.cpp(105) : error C2065: 'qobject_case' : undeclared identifier1>.\Control\TreeList.cpp(105) : error C2059: syntax error : '>'uj5u.com熱心網友回復:
可是這樣也得不到id吧? 貌似只能得到text
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/128712.html
標籤:其他技術討論專區
下一篇:C++ foreach 實作
