【PySide6】Repeater 子控件分析

文章目錄

  • 前言
  • 分析

前言

修改 Column 控件下使用 Repeater 生成的子控件,但是沒有 id 無法操作,使用 children 層層遞歸分析

分析

QML 代碼

	// https://doc.qt.io/qt-6/qml-qtquick-column.htmlColumn {id: columnspacing: 2// 定義模型property var comboBoxModel: [{ label: "端口號", id: "port", options: [] },{ label: "波特率", id: "baudrate", options: ["9600", "115200"], index: 1, editable: true },{ label: "數據位", id: "bytesize", options: [5, 6, 7, 8], index: 3 },{ label: "校驗位", id: "parity", options: ["None", "Even", "Odd", "Space"]},{ label: "停止位", id: "stopbits", options: [1, 1.5, 2] }]// 復用項定義:https://doc.qt.io/qt-6/qml-qtqml-component.htmlComponent {id: comboBoxComponent// https://doc.qt.io/qt-6/qml-qtquick-row.htmlRow {spacing: 2// https://doc.qt.io/qt-6/qml-qtquick-controls-label.htmlLabel { width: 50; height: 20; text: label+':' }// https://doc.qt.io/qt-6/qml-qtquick-controls-combobox.htmlComboBox {property var name: labelwidth: 80height: 20model: optionscurrentIndex: index ? index : 0editable: edit ? edit : false}}}// 動態創建標簽和下拉框:https://doc.qt.io/qt-6/qml-qtquick-repeater.htmlRepeater {model: column.comboBoxModel// https://doc.qt.io/qt-6/qml-qtquick-loader.htmlLoader {property var label: modelData.labelproperty var options: modelData.optionsproperty var index: modelData.indexproperty var edit: modelData.editablesourceComponent: comboBoxComponent}}// https://doc.qt.io/qt-6/qml-qtquick-controls-button.htmlButton {text: "打開"width: parent.widthonClicked: {for(var i = 0; i < 5; i++) {// print(column.children[i].children[0].children[1].name)var obj = column.children[i].children[0].children[1]print(obj.name)}}}}

分析:

  1. 設置 Column 控件 id 為 column,通過按鍵點擊觸發 children 打印;
  2. column.children.length:7
  3. column.children: [QQuickLoader_QML_23(0x22b66a9fc60),QQuickLoader_QML_23(0x22b66aa06e0),QQuickLoader_QML_23(0x22b66a9fd40),QQuickLoader_QML_23(0x22b66aa0b40),QQuickLoader_QML_23(0x22b66a9f3a0),QQuickRepeater(0x22b66874200),Button_QMLTYPE_13(0x22b66873cc0)];類型為 list,包含 Loader5,Repeater1,Button*1,與實際布局一致,其中五個 Loader 就是 Repeater 創建的子控件,通過 column.children[i] 進行訪問;
  4. column.children[0].children:[QQuickRow(0x22b6685fd20)],需要使用 column.children[0].children[0] 進行訪問;
  5. column.children[0].children[0].children[1]:即為需要訪問的子控件的下拉列表控件

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

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

相關文章

代碼隨想錄算法訓練營刷題復習10:二叉樹、二叉搜索樹復習2

二叉樹、二叉搜索樹 力扣題復習 110. 平衡二叉樹257. 二叉樹的所有路徑404. 左葉子之和513. 找樹左下角的值112.路徑之和113.路經總和ii450. 刪除二叉搜索樹中的節點701. 二叉搜索樹中的插入操作 110. 平衡二叉樹 左右子樹高度差要小于1 ->遞歸調用&#xff08;need新的函…

API-元素尺寸與位置

學習目標&#xff1a; 掌握元素尺寸與位置 學習內容&#xff1a; 元素尺寸與位置仿京東固定導航欄案例實現bilibili點擊小滑塊移動效果 元素尺寸與位置&#xff1a; 使用場景&#xff1a; 前面案例滾動多少距離&#xff0c;都是我們自己算的&#xff0c;最好是頁面滾動到某個…

[leetcode]圓圈中最后剩下的數字/ 破冰游戲

. - 力扣&#xff08;LeetCode&#xff09; class Solution {int f(int num, int target) {if (num 1) {return 0;}int x f(num - 1, target);return (target x) % num;} public:int iceBreakingGame(int num, int target) {return f(num, target);} };

程序猿大戰Python——Python與MySQL交互一

pymysql模塊的安裝 目標&#xff1a;了解如何安裝pymysql模塊&#xff1f; 當要使用Python和MySQL數據庫進行交互&#xff0c;需要借助一個第三方模塊&#xff1a;pymysql。 在使用pymysql模塊前&#xff0c;先進行安裝&#xff1a; pip install pymysql 有時使用pip instal…

從零開始做題:有手就行

1 題目 2 解題 ARPHCR工具破解 得到flag DASCTF{2b3767763885a019b65bbfe9d1136c3b}

數據結構與算法筆記:高級篇 - 向量空間:如何實現一個簡單的音樂推薦系統?

概述 很多人喜都喜愛聽歌&#xff0c;以前我們用 MP3 聽歌&#xff0c;現在直接通過音樂 App 在線就能聽歌。而且&#xff0c;各種音樂 App 的功能越來越強大&#xff0c;不僅可以自己選歌聽&#xff0c;還可以根據你聽歌的喜好&#xff0c;給你推薦你可能會喜好的音樂&#x…

【WEB前端2024】3D智體編程:喬布斯3D紀念館-第49課-機器人自動跳舞

【WEB前端2024】3D智體編程&#xff1a;喬布斯3D紀念館-第49課-機器人自動跳舞 使用dtns.network德塔世界&#xff08;開源的智體世界引擎&#xff09;&#xff0c;策劃和設計《喬布斯超大型的開源3D紀念館》的系列教程。dtns.network是一款主要由JavaScript編寫的智體世界引擎…

DevExpress Office File API教程 - 如何使用AI服務增強Word文檔可訪問性和語言支持?

DevExpress Office File API是一個專為C#, VB.NET 和 ASP.NET等開發人員提供的非可視化.NET庫。有了這個庫&#xff0c;不用安裝Microsoft Office&#xff0c;就可以完全自動處理Excel、Word等文檔。開發人員使用一個非常易于操作的API就可以生成XLS, XLSx, DOC, DOCx, RTF, CS…

使用隱式事件執行控制圖

什么是隱式事件&#xff1f; 隱式事件是圖表執行時發生的內置事件&#xff1a; 圖表喚醒 進入一個狀態 退出狀態 分配給內部數據對象的值 這些事件是隱式的&#xff0c;因為您沒有顯式地定義或觸發它們。隱式事件是它們發生的圖表的子級&#xff0c;僅在父圖表中可見。 隱式事…

【AI生成】海上風電中衛星網絡與無線自組網的應用分析

隨著可再生能源的不斷發展&#xff0c;海上風電作為其中的重要組成部分&#xff0c;在我國能源結構調整中占據越來越重要的地位。近年來&#xff0c;我國海上風電產業發展迅速&#xff0c;海上風電場數量和規模不斷擴大&#xff0c;相應地&#xff0c;海上風電運維和安全保障的…

git branch -a 不顯示遠程分支修復

使用git remote -v命令&#xff0c;查看所有的遠程倉庫及其URL如果沒有&#xff0c;說明沒有遠程倉庫&#xff0c;繼續往下走使用git remote add origin <url>命令來添加或修改遠程倉庫&#xff1a;其中<url>是遠程倉庫的正確URL&#xff0c;就是git項目的http的地…

實現Java中的圖像處理功能

實現Java中的圖像處理功能 大家好&#xff0c;我是免費搭建查券返利機器人省錢賺傭金就用微賺淘客系統3.0的小編&#xff0c;也是冬天不穿秋褲&#xff0c;天冷也要風度的程序猿&#xff01;在本篇文章中&#xff0c;我們將探討如何在Java中實現圖像處理功能。圖像處理是計算機…

Embedding的概念和展開

前言 本章&#xff0c;我們介紹一個非常細的細節技術。讓我們微調大模型的一些特性和能力。 在大模型的AI套路演化過程中&#xff0c;其實經歷了太多的技術革新和方式變化&#xff0c;Embedding其實也可能是其中一個高速湮滅的技術點之一。 對比LoRA現在大紅大紫&#xff0c…

每個 Node.js 開發人員都應該知道的13個庫(下)

7. Sequelize Mongoose是一個Node。基于js的MongoDB對象建模工具&#xff0c;通常被稱為對象數據建模&#xff08;ODM&#xff09;庫&#xff0c;它提供了諸如鉤子、模型驗證、連接和查詢等功能。 Mongoose為應用程序數據提供了一個基于模式的解決方案&#xff0c;它在應用程…

【JavaScript腳本宇宙】玩轉數據存儲:深入剖析提升 Web 應用程序性能的六大利器

從本地到云端&#xff1a;全面解析滿足各種需求的高性能 JavaScript 數據庫庫 前言 本文將介紹幾個流行的JavaScript數據庫庫&#xff0c;包括localForage、Dexie.js、PouchDB、LokiJS和NeDB。每個庫都有自己的特點和適用場景。通過比較它們的功能和使用方式&#xff0c;可以…

論文翻譯 | ITER-RETGEN:利用迭代檢索生成協同增強檢索增強的大型語言模型

論文地址&#xff1a;Enhancing Retrieval-Augmented Large Language Models with Iterative Retrieval-Generation Synergy 摘要 檢索增強生成由于有望解決包括過時知識和幻覺在內的大型語言模型的局限性而引起廣泛關注。然而&#xff0c;檢索器很難捕捉相關性&#xff0c;尤…

BurpSuite2024.5.3專業版,僅支持Java21以上

01更新介紹 此版本引入了對 WebSocket 的 Burp Scanner 支持、對錄制的登錄編輯器的改進、WebSocket 匹配和替換規則以及許多性能改進。我們還刪除了一些冗余的掃描檢查。 Burp Scanner 對 WebSockets 的支持我們更新了內部代理的配置&#xff0c;以允許 WebSocket 流量。這使…

代碼隨想錄算法訓練營第五十一天| 115.不同的子序列、583. 兩個字符串的刪除操作、 72. 編輯距離

LeetCode 115.不同的子序列 題目鏈接&#xff1a;https://leetcode.cn/problems/distinct-subsequences/description/ 文章鏈接&#xff1a;https://programmercarl.com/0115.%E4%B8%8D%E5%90%8C%E7%9A%84%E5%AD%90%E5%BA%8F%E5%88%97.html 思路 * dp[i][j]&#xff1a;以i-1…

Docker快速極簡配置nginx實現不同域名訪問分流

文章目錄 前言安裝配置使用鏡像拉取及環境配置修改代理文件編寫docker-compose文件啟動nginx代理 總結 前言 本文主要記錄如何使用docker安裝配置Nginx&#xff0c;如何使用Nginx把通過80、443端口訪問的請求根據域名分發到不同端口。那么什么是Nginx呢&#xff0c;下邊做個簡…

將產品制作成3D模型在網站上展示需要多少費用?

將產品制作成3D模型并在網站上展示的費用會因多種因素而異&#xff0c;包括模型的復雜度、所需的細節程度、制作3D模型的軟件和工具、以及是否需要專業設計師的服務等。此外&#xff0c;不同的3D模型制作服務提供商可能會有不同的定價標準。 如果能自己制作3D模型&#xff0c;…