QML Label組件

QML中的Label組件是構建用戶界面時最常用的文本顯示控件之一,它繼承自Text元素但提供了更豐富的UI特性和主題集成支持。本文將全面介紹Label的核心功能、屬性配置、使用技巧以及與Text組件的區別,幫助開發者高效構建美觀的文本界面。

Label組件基礎

Label是Qt Quick Controls 模塊提供的文本顯示控件,它具有以下特點:

  • ?自動適配系統主題?:默認遵循應用程序的主題設置
  • ?更豐富的樣式定制?:支持背景、內邊距等UI特性
  • ?優化的排版處理?:內置更好的文本布局管理
  • ?控件級功能?:提供焦點策略、狀態管理等控件特性

基本使用需要先導入模塊:

import QtQuick.Controls 2.15

最簡單的Label定義:

Label {text: "Hello QML"
}

核心屬性詳解

1. 文本內容與樣式

  • ?text?:顯示的文字內容,支持靜態文本和動態綁定
  • ?color?:文本顏色,支持顏色名稱或十六進制值
  • ?font?:字體樣式組,包含多個子屬性:
    font {family: "Arial"  // 字體pixelSize: 16    // 字號bold: true       // 加粗italic: true     // 斜體underline: true  // 下劃線
    }

2. 布局與對齊

  • ?horizontalAlignment?/?verticalAlignment?:水平和垂直對齊方式
  • ?wrapMode?:文本換行模式(NoWrap/WordWrap/WrapAnywhere)
  • ?elide?:文本溢出處理(ElideLeft/ElideMiddle/ElideRight)
  • ?padding?:內邊距設置,支持統一或分邊設置:
    padding: 10  // 統一設置
    // 或分邊設置
    topPadding: 5
    leftPadding: 10

3. 背景與裝飾

Label特有的背景設置能力:

background: Rectangle {color: "lightgray"radius: 5  // 圓角border.color: "gray"
}

高級功能應用

1. 富文本支持

通過設置textFormat屬性支持富文本顯示:

Label {text: "<b>粗體</b>和<i>斜體</i>文本"textFormat: Text.RichTextonLinkActivated: Qt.openUrlExternally(link)
}

2. 多語言國際化

使用qsTr()函數實現多語言支持:

Label {text: qsTr("歡迎使用")
}

?示例代碼:

import QtQuick
import QtQuick.ControlsWindow {width: 1024height: 768visible: truetitle: qsTr("Hello World")Label {id: backgroundLabelanchors.fill: parentbackground: Image {source: "kun.jpg"}}// Text文本Label {id: label1width: 300height: 300text: "普惠體 3.0 55 Regular ABCDEFG 1234546789"font.family: "阿里巴巴普惠體 3.0 55 Regular"font.pixelSize: 32font.bold: truefont.underline: true  //下劃線font.wordSpacing: 30  //字體間距color: "red"wrapMode: Text.WordWrap //根據word換行leftPadding: 10 //設置左邊距10像素horizontalAlignment: Text.AlignHCenterverticalAlignment: Text.AlignVCenter}Label {id: label2width: 220height: 50anchors.top: label1.bottomanchors.topMargin: 10anchors.left: parent.leftbackground: Rectangle {color:"#FFFF00"}text: "Hello World123456"font.pixelSize: 32color: "blue"horizontalAlignment: Text.AlignHCenterverticalAlignment: Text.AlignVCenter// topInset: 20// leftInset: 30  //設置背景間隔,跟QSS的padding-left差不多吧style: Text.Raised //字體風格elide: Text.ElideRight  //超出右邊范圍省略}Label {id: label3width: 220height: 50anchors.top: label2.bottomanchors.topMargin: 10anchors.left: parent.leftanchors.leftMargin: 20background: Rectangle {color:"#00FF00"}text: "Hello World123456"font.pixelSize: 32color: "blue"horizontalAlignment: Text.AlignHCenterverticalAlignment: Text.AlignVCenter// leftInset: 30clip: true   //文本字體太大,超出文本范圍截斷}Label {id: label4width: 140height: 60anchors.centerIn: parentbackground: Image {source: "qt_logo.png" //如果是資源文件,要賦值資源文件的地址}}Label {id: label5width: 50height: 50anchors.top: label4.bottomanchors.topMargin: 30anchors.horizontalCenter: parent.horizontalCenterbackground: Image {id: label5Imagesource: "settings.png"}MouseArea {anchors.fill: label5onPressed: {label5Image.opacity = 0.5}onReleased: {label5Image.opacity = 1}onClicked: {console.log("label5 clicked!")}}}}

效果展示:

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

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

相關文章

使用 GDB 調試 Redis 服務進程指南

1. 準備工作 安裝 GDB 在大多數 Linux 發行版上&#xff0c;執行&#xff1a; sudo apt-get update sudo apt-get install gdb確保有足夠磁盤空間 Core dump 文件可能較大&#xff0c;請提前檢查磁盤剩余空間&#xff1a; df -h .可選&#xff1a;使用 tmux 或 screen 為避免 S…

深度學習-環境準備

安裝python&#xff0c;miniconda(最后步驟關于python環境變量部分全部勾選)&#xff0c;pycharm 關于離線安裝numpy和matplotlib&#xff08;我的環境連不上網&#xff09; 我們先去 PyPI The Python Package Index 下載離線包 在搜索框搜索你的包名稱&#xff0c;這里是 m…

記錄在Windows系統用Python 3.12環境實現Nuitka過程

內容只提供Windows 10 與 Windows 11 下&#xff0c;搭建 Python 3.12 環境&#xff0c;并使用 Nuitka 將腳本打包為可執行文件的詳細流程。全文分為以下幾部分&#xff1a; 準備工作與系統要求 安裝 Python 3.12 配置環境變量與 pip 創建虛擬環境&#xff08;推薦&#xff…

深入解析C#接口聲明:核心規則與最佳實踐

接口聲明的核心約束 禁止包含的成員類型 ? 數據成員&#xff08;字段、常量&#xff09;? 靜態成員&#xff08;靜態方法/屬性&#xff09; 理由&#xff1a;接口僅定義契約&#xff0c;不涉及實現或狀態存儲。 允許的成員類型&#xff08;僅非靜態函數成員&#xff09; ? 方…

Javaweb - 10.6 請求轉發和響應重定向

目錄 概述 請求轉發 邏輯圖 測試代碼 總結 響應重定向 邏輯圖 測試代碼 總結 完&#xff01; 概述 什么是請求轉發和響應重定向&#xff1f; 請求轉發和響應重定向&#xff0c;是 web 應用中&#xff0c;間接訪問項目資源的兩種手段&#xff0c;也是 Servlet 控制頁…

severb

題目一 解決方法&#xff1a; 題目二&#xff1a; 解決方法&#xff1a; 題目三&#xff1a; xfs&#xff1a; ext&#xff1a; 題目四&#xff1a; 解決方法&#xff1a; fdisk中命令&#xff1a;n&#xff08;新建&#xff09; 主分區 、id、起始塊都為默認、結束塊為756M t…

Hbase2.6.2集群部署(最新版)

配套版本安裝&#xff1a; Hadoop 3.4.1 Zookeeper3.9.3 Hbase2.6.2 前置安裝 Linux環境下部署Zookeeper3.9.3(最新版)集群部署-CSDN博客 Linux環境下Hadoop3.4.1(最新版本)集群部署-CSDN博客 一、文件解壓 cd /usr/local/soft/ tar -zxvf hbase-2.6.2-bin.tar.gz 二、修改啟…

IDEA-安裝IDEA開發工具

目錄 一.從官網獲取安裝包 二.進行安裝 三.首次運行IDEA 四.創建Java項目&#xff0c;檢測是否運行成功 一.從官網獲取安裝包 IDEA官網https://www.jetbrains.com/idea/ IDEA是分為免費的社區版和付費的最終版的&#xff0c;這里強烈建議使用付費的最終版&#xff0c;免費社…

房屋結構安全監測系統:技術架構與應用解析

政策背景&#xff1a;制度驅動下的安全升級??近年來&#xff0c;國家層面密集出臺多項房屋安全管理政策&#xff0c;為智能化監測技術提供了明確的制度支撐和發展方向&#xff1a;專項整治要求&#xff1a;國務院《全國自建房安全專項整治作方案》明確提出“用3年左右時間完成…

goole chrome變更默認搜索引擎為百度

找到瀏覽器的設置點擊設置跳轉到設置頁面點擊此頁面的 【搜索引擎】欄點擊【管理搜索引擎和網站搜索】設置搜索引擎 網址格式http://www.baidu.com/s?wd%s&ie{inputEncoding}

萬物智聯時代啟航:鴻蒙OS重塑全場景開發新生態

目錄 HarmonyOS簡介&#xff1a;分布式操作系統&#xff0c;開啟萬物智聯新時代 HarmonyOS發展歷程&#xff1a;從破局到引領 核心特性&#xff1a;分布式技術三支柱 應用場景&#xff1a;全場景覆蓋的鴻蒙生態 什么選擇鴻蒙開發&#xff1f;技術紅利與市場藍海 結語&…

LangChain4j 系統化知識學習筆記(接入模型、AiService、持久化記憶、增強RAG)

文章目錄前言一、認識**LangChain4j**1.1、歷史背景1.2、主要功能1.3、場景二、SpringBoot接入大模型2.1、項目基本配置 & pom引入依賴2.2、接入大模型2.2.1、**LangChain4j** 庫結構2.2.2、引入LangChain4j相關依賴2.2.3、補充LangChain4j單測來驗證與gpt交互2.3、整合lan…

什么是時序數據庫?——原理、特點與應用

在大數據和物聯網時代&#xff0c;數據的產生速度和數量都在飛速增長。尤其是在工業監控、金融分析、物聯網等領域&#xff0c;數據往往以“時間序列”的形式不斷產生。為了高效地存儲和分析這類數據&#xff0c;時序數據庫&#xff08;Time Series Database&#xff0c;簡稱TS…

FastAPI+React19 ERP系統實戰 第01期

一、基礎環境 1.1 項目依賴 package.json {"name": "erp-web","version": "1.0.0","description": "ERP系統前端 - React 19","main": "index.js","type": "module",…

【機器學習筆記 Ⅱ】1 神經網絡

神經網絡是一種受生物神經元啟發設計的機器學習模型&#xff0c;能夠通過多層非線性變換學習復雜的輸入-輸出關系。它是深度學習的基礎&#xff0c;廣泛應用于圖像識別、自然語言處理、游戲AI等領域。1. 核心思想 生物類比&#xff1a;模仿人腦神經元的工作方式&#xff0c;通過…

謝飛機的Java高級開發面試:從Spring Boot到分布式架構的蛻變之旅

面試現場&#xff1a;謝飛機的求職奇遇記 "請坐&#xff0c;謝先生。我看你簡歷上寫了精通Lombok&#xff1f;"面試官推了推金絲眼鏡。 謝飛機一愣&#xff1a;"啊...這個..."突然掏出手機&#xff0c;"您看我GitHub開源項目里用了SneakyThrows&…

一站式整合:解鎖高效后端管理利器——Motia

在當今的科技世界中&#xff0c;企業對于后端系統的要求越來越高。無論是處理復雜的 API 請求、管理后臺任務&#xff0c;還是集成 AI 代理&#xff0c;這些都需要一個強大的框架來支撐。而今天&#xff0c;我們要介紹的 Motia 正是這樣一個現代化、統一的后端框架&#xff0c;…

如何將信息從 iPhone 同步到Mac(完整步驟和示意圖)

如果您是 Apple 用戶&#xff0c;您一定知道在所有設備上保持同步是多么便捷。Apple 生態系統的一大亮點就是能夠在 iPhone 和 Mac 之間同步 iMessage 和短信。如果您想了解如何將信息從 iPhone 同步到 Mac&#xff0c;千萬不要錯過本教程。快速瀏覽一下這些方法&#xff1a;第…

【C++字符串變換】2022-7-20

緣由C問題-字符串變換-編程語言-CSDN問答 void 字符串變換() {string s "", t ""; char f; int x 0, g 1, l 0;cin >> s; l s.size();while (x <l){f s[x];if (f s[x 1]){g, s.erase(x, 1);}else{if (g > 1){s.erase(x, 1);t s.sub…

Web攻防-XMLXXE無回顯帶外SSRF元數據DTD實體OOB盲注文件拓展

知識點&#xff1a; 1、WEB攻防-XML&XXE-注入原理&分類&修復 2、WEB攻防-XML&XXE-文件讀取&SSRF&實體引用 3、WEB攻防-XML&XXE-無回顯&升級拓展&挖掘思路 一、演示案例-WEB攻防-XML&XXE-注入原理&分類&安全影響 詳細點 XML被…