QTreeWidget 簡單使用

效果圖:

關鍵代碼:


void MainProj::_InitTree()
{
?? ?connect(m_pTreeWidget, SIGNAL(itemClicked(QTreeWidgetItem*, int)), this, SLOT(TreeItemClicked(QTreeWidgetItem*, int)));
?? ?m_pTreeWidget->header()->setHidden(1);
?? ?/*QTreeWidgetItem* topItem = new QTreeWidgetItem;
?? ?topItem->setCheckState(0, Qt::Unchecked);
?? ?topItem->setText(0, "liebiao");*/
?? ?m_pTreeWidget->setColumnCount(2);
?? ?m_pTreeWidget->setColumnWidth(0, 200);

?? ?QTreeWidgetItem* topItem = _AddTreeItem(m_pTreeWidget, nullptr, "根");


?? ?m_pTreeWidget->addTopLevelItem(topItem);
?? ?QTreeWidgetItem* item1 = _AddTreeItem(m_pTreeWidget, topItem, "目標1");
?? ?//item1->setIcon(0,)
?? ?QList<QString> listTarget;
?? ?listTarget << "11" << "12";
?? ?for (int i = 0; i < listTarget.count(); i++) {
?? ??? ?_AddTreeItem(m_pTreeWidget, item1, listTarget.at(i));
?? ?}

?? ?QTreeWidgetItem* item2 = _AddTreeItem(m_pTreeWidget, topItem, "目標2");
?? ?listTarget.clear();
?? ?listTarget << "21" << "22" << "23";
?? ?for (int i = 0; i < listTarget.count(); i++) {
?? ??? ?_AddTreeItem(m_pTreeWidget, item2, listTarget.at(i));
?? ?}

?? ?QTreeWidgetItem* item3 = _AddTreeItem(m_pTreeWidget, topItem, "目標3");
?? ?listTarget.clear();
?? ?listTarget << "31" << "32" << "33" << "34";
?? ?for (int i = 0; i < listTarget.count(); i++) {
?? ??? ?_AddTreeItem(m_pTreeWidget, item3, listTarget.at(i));
?? ?}

?? ?m_pTreeWidget->expandAll();
}

QTreeWidgetItem* MainProj::_AddTreeItem(QTreeWidget* pTree, QTreeWidgetItem* parentItem, const QString& itemTxt)
{
?? ?QTreeWidgetItem* item = new QTreeWidgetItem(parentItem);
?? ?item->setFlags(item->flags() | Qt::ItemIsUserCheckable);
?? ?item->setCheckState(0, Qt::Unchecked);
?? ?item->setText(0, itemTxt);

?? ?QIcon icon(":/MMIProject/Resource/Help.ico"); // 設置圖標路徑,替換為實際路徑
?? ?item->setIcon(0, icon); // 在第一列設置圖標

?? ?item->setText(1, QString("success"));
?? ?QIcon icon1(":/MMIProject/Resource/LedOn.ico"); // 設置圖標路徑,替換為實際路徑
?? ?item->setIcon(1, icon1); // 在第一列設置圖標

?? ?return item;
}
?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/86600.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/86600.shtml
英文地址,請注明出處:http://en.pswp.cn/web/86600.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

手勢-handpose的pipeline介紹

手勢-handpose的pipeline包括&#xff1a; 1、手部檢測算法&#xff1a;單幀檢測出左右手的邊界框。 2、手部跟蹤算法&#xff1a;連續幀跟蹤&#xff0c;鎖定左右手跟蹤目標&#xff0c;作為后續的手部ui操作。 3、手部關鍵點檢測算法&#xff1a;基于單幀的檢測框圖像作為輸…

計算機操作系統(十七)內存管理

計算機操作系統&#xff08;十七&#xff09;內存管理 前言一、內存的使用與程序重定位&#xff08;一&#xff09;內存是什么&#xff1f;&#xff08;二&#xff09;程序的重定位過程&#xff08;三&#xff09;總結&#xff1a;內存使用的核心問題 二、連續分區管理&#xf…

【編譯原理】期末

單選題 (4分) 令文法G[E]為&#xff1a;E->ET | T T->T*F | F F-> (E) | i 句型 F*iT 的最左素短語是&#xff08; &#xff09; A.F B.i C.T D.F*i B 短語&#xff1a; F*iT、F*i、F、i 素短語&#xff1a; i 最左素短語&#xff1a; i 單選題 (4分) 若在…

一個簡單測試Deepseek吞吐量的腳本,國內環境可跑

一個簡單測試Deepseek吞吐量的腳本,這里用DeepSeek-R1-Distill-Qwen-32B ,支持單卡4090 24G可跑,具體看你的硬件情況做調整,理論支持所有的模型,看你需要,可以修改模型名稱,重點是pip使用國內的源,模型下載用阿里的ModelScope,無障礙下載,使用. 最后可以生成一個txt與html報表.…

前端基礎知識JavaScript系列 - 19(正則表達式)

一、是什么 正則表達式是一種用來匹配字符串的強有力的武器 它的設計思想是用一種描述性的語言定義一個規則&#xff0c;凡是符合規則的字符串&#xff0c;我們就認為它“匹配”了&#xff0c;否則&#xff0c;該字符串就是不合法的 在 JavaScript中&#xff0c;正則表達式也…

Java鎖機制知識點

一、鎖的基礎概念 1.1 什么是鎖 在并發編程中&#xff0c;鎖是用于控制多個線程對共享資源進行訪問的機制。鎖可以保證在同一時刻最多只有一個線程訪問共享資源&#xff0c;從而保證數據的一致性。 1.2 鎖的分類 可重入鎖 vs 不可重入鎖&#xff1a;可重入鎖允許同一個線程…

2025下半年軟考軟件設計師(中級)怎么高效備考,目標是穩過線!

25下半年軟考開始進入備考階段&#xff0c;現在咱們就拋開那些文縐縐的官話&#xff0c;用大白話來聊聊2025下半年軟考軟件設計師&#xff08;中級&#xff09;怎么高效備考&#xff0c;目標是穩過線&#xff01; 核心思想&#xff1a;抓大放小&#xff0c;真題為王&#xff0…

Jupyter常見操作(持續更新)

Jupyter常見操作&#xff08;持續更新&#xff09; 本文主要整理一些常見的或者比較簡單的Jupyter操作&#xff0c;盡量保證一次性整理出來&#xff0c;方便需要但是忘記的情況下可以直接查&#xff0c;希望能當字典。 1.查看Jupyter內核 jupyter kernelspec list 2.使用指定…

連點成畫面積計算算法

連點成畫面積計算算法 問題分析與算法設計 1. 問題特征分析 閉合多邊形(起點和終點相同)線段可能交叉形成復雜形狀需要處理自交多邊形可能有多個內部空洞點數較多(≥50個點),需要高效算法2. 解決方案選擇 采用平面掃描算法結合多邊形布爾運算來準確計算最外層邊界包圍的…

華為云Flexus+DeepSeek征文 | 華為云MaaS平臺上的智能客服Agent開發:多渠道融合應用案例

華為云FlexusDeepSeek征文 | 華為云MaaS平臺上的智能客服Agent開發&#xff1a;多渠道融合應用案例 &#x1f31f; 嗨&#xff0c;我是IRpickstars&#xff01; &#x1f30c; 總有一行代碼&#xff0c;能點亮萬千星辰。 &#x1f50d; 在技術的宇宙中&#xff0c;我愿做永不…

03.BUG

Bug 1.軟件測試的生命周期2. BUG2.1 表述BUG的要素2.2 BUG級別2.3 BUG的聲命周期 1.軟件測試的生命周期 ? 軟件測試貫穿于軟件的整個生命周期&#xff1a;軟件測試的生命周期&#xff08;Software Testing Life Cycle, STLC&#xff09;,是指測試流程&#xff0c;這個流程是按…

【數據標注師】問答標注

目錄 一、 **問答標注的認知底層架構**1. **三維評估體系**2. **四類問題處理范式** 二、 **五階能力培養體系**? **階段1&#xff1a;問題解析能力筑基&#xff08;2周&#xff09;**? **階段2&#xff1a;答案質量評估訓練**? **階段3&#xff1a;復雜場景處理**? **階段…

使用DBeaver 連接mysql,使用存儲過程插入5萬條數據

使用DBeaver連接MySQL并創建存儲過程生成5萬條數據 連接MySQL數據庫 打開DBeaver&#xff0c;點擊"數據庫"菜單選擇"新建連接"&#xff0c;選擇MySQL驅動。填寫主機、端口、數據庫名稱、用戶名和密碼等信息&#xff0c;測試連接成功后保存。 創建測試表…

某省賽題-windows內存取證

1.獲取admin用戶密碼是多少&#xff1f; 這里我們使用hashdump之后用john爆破沒有結果&#xff0c;然后使用lsadump出來了flag 2.獲取ip和主機名是什么&#xff1f; 主機名&#xff1a; 看注冊表 SAM&#xff1a;記錄了所有的用戶 SYSTEM&#xff1a;可以看主機名 SOFTWARE&a…

【軟考高項論文】論信息系統項目的成本管理

摘要 在信息系統項目管理里&#xff0c;成本管理是極為關鍵的環節&#xff0c;直接影響項目的順利開展與最終成敗。本文結合項目管理實際情況&#xff0c;從項目成本基準的形成過程、項目S曲線的繪制以及成本控制的具體實施三個方面&#xff0c;詳細闡述了對信息系統項目成本管…

AI人工智能技術應用于人社服務領域的創新研究報告

AI 人工智能技術應用于人社服務領域的創新研究報告 一、研究背景與市場概況 1.1 研究背景與政策環境 人工智能技術正深刻改變政府治理模式和公共服務方式。在國家全面推進數字化轉型的戰略背景下,人社部《數字人社建設行動實施方案》明確提出:到 2025 年,人社數字化底座…

javaEE-mybatis操作數據庫

前言 在MySQL的學習階段&#xff0c;我們知道了如何使用JDBC去操作&#xff0c;也正是因為學習了JDBC也知道其操作的繁瑣&#xff0c;每次的CRUD操作都需要從數據庫連接池中去獲取數據庫連接&#xff0c;然后再編寫SQL語句&#xff0c;并綁定對應的參數&#xff0c;接著通過連…

移動端測試——如何解決iOS端無法打開彈窗式網頁(Webkit)

目錄 一、什么是webkit&#xff1f; 1. 核心定義 2. iOS 的特殊限制 3. 彈窗攔截的邏輯 二、為什么 iOS 必須用 WebKit&#xff1f; 1. 蘋果的官方理由 2. 實際后果 3.然而…… 三、如何解決iOS端無法打開彈窗式網頁&#xff1f; 1.用戶 1.1 safari瀏覽器 1.2 夸克…

【github】從本地更新倉庫里的文件筆記

1. 打開GitHub官網&#xff0c;并登錄到您的賬戶。 2. 在頁面右上角的搜索欄中&#xff0c;輸入您要更新的倉庫名稱&#xff0c;并選擇相應的倉庫進入。 3. 在倉庫頁面中&#xff0c;找到并點擊紅色的“Code”按鈕&#xff0c;然后復制倉庫的HTTPS或者SSH鏈接。 4. 右鍵包含…

Excel基礎:數據編輯

Excel是Windows下最常用的數據處理工具&#xff0c;本文詳細介紹Excel的數據編輯功能&#xff0c;熟練掌握編輯技巧能可以極大提升工作效率&#xff0c;文章最后附加了一張總結思維導圖&#xff0c;方便大家查找和記憶。 文章目錄 一、數據輸入1.1 覆蓋輸入1.2 追加輸入1.3 任…