QTreeWidget的基本應用

2021-06-14 15:00:43 字數 1347 閱讀 8679

基於qt 4.8.4, vs2010

官方文件 

qtreewidget控制項用於顯示樹形結構。

在程式中使用它,需要做兩件事:

1. 定義事件和響應函式

2. 樹結構資料的輸入輸出

1. 定義事件和響應函式

在ui編輯器中建立乙個qtreewidget控制項,在「訊號/槽編輯器」中為控制項新增訊號、接收者、槽。接收者是源程式中的類,槽是響應函式的名稱。

在源**中,為上一步中接收訊號的類新建乙個與上一步中的槽同名的函式,這個函式就是事件的響應函式。

具體到qtreewidget的單擊事件,它通過訊號itemclicked(qtreewidgetitem*, int)傳出兩個引數,qtreewidget*型別的是被單擊條目對應的樹節點,int是列號。所以源程式的響應函式的形參也應當是qtreewidgetitem*, int。

qt會根據.ui檔案自動將介面轉化為**,生成ui_******xx.h,位於generated files資料夾,但是槽函式都沒有形參,需要手動新增。由於在介面編輯器中做出改動後這個標頭檔案會被重新生成,所以

每次修改後,都要記得在ui_******xx.h裡重新新增響應函式的形參。

2. 樹結構資料的輸入輸出

我們的核心任務是建好一棵樹,然後把這棵樹指定給樹顯示控制項。

樹節點的型別是qtreewidgetitem,可以在建立節點時指定其父節點也可以稍後指定。

//建立根節點:

qtreewidgetitem *root = new qtreewidgetitem( (qtreewidget*)0, qstringlist("root") );

//在根節點寫入數值:

root->setdata(0, qt::userrole, qvariant(-1));

//建立子節點,並讓每個子節點都指向root:

for (int i = 0; i < 100; i++)

//建立子節點的子節點:

qtreewidgetitem *item1 = new qtreewidgetitem(root, qstringlist(qstring::number(1024)));

qtreewidgetitem *item1_1 = new qtreewidgetitem(item1, list);

//關聯樹控制項和樹,如果沒有單一根節點,第一層就有多個節點,可以使用inserttoplevelitems()

ui.treewidget_recordlist->clear();

ui.treewidget_recordlist->inserttoplevelitem(0, items_record_root);

Tomcat的基本應用

1 測試tomcat 啟動tomcat 在瀏覽器中輸入 2 tomcat的管理 tomcat 的服務管理頁面是 的應用程式管理頁面 3 發布應用程式 jsp應用程式 war有二種方式,一種是按一定的目錄結構組織檔案,一種是乙個字尾為 war的壓縮包,因此它的部署方式也有兩種 1 在瀏覽器中輸入 就會...

陣列的基本應用

陣列 是一組相關資料的集合,乙個陣列實際上就是一連串的變數,陣列按照使用可以分為一維陣列 二維陣列 多維陣列。一維陣列 儲存相同資料型別的資料集合。宣告 常用 a arr null 少用 a arr null.定義 動態 arr new a length 靜態常用 arr 靜態少用 arr new ...

logstash的基本應用

elk學習1.3 logstash 6.3.2 搭建及配置 logstash對file進行讀取時,檔案路徑一定要f logs logstash log而不能寫成f logs logstash filebeat中文指南 filebeat 快速開始 logstash實現日誌檔案同步到elasticsea...