2 Qt中的空窗口外觀設置和常用的基礎部件

Widget空窗口

   this->setWindowTitle("我的窗口");//設置窗口標題this->resize(500,300);//設置窗口大小this->setFixedSize(500,300);//設置固定大小(無法拖拽)

此時,窗口大小發生改變,且窗口名稱改變,窗口無法再拖動改變大小

常用的基礎部件

Qt提供了很多部件,可以開發出圖形化的用戶界面,使用這些控件時需要先引入頭文件

QLabel

常用方法:

    // 創建 QLabel 對象QLabel *l1 = new QLabel;// 設置文本內容l1->setText("Hello,你好啊!!!");// 設置文本顯示位置l1->move(100, 100);// 設置文本區域大小l1->resize(200, 100);// 設置文本對齊方式, 默認水平左對齊 垂直中對齊l1->setAlignment(Qt::AlignHCenter | Qt::AlignTop);// 設置文本使用字體l1->setFont(QFont("楷體"));// 將文本框加入到父級,也就是 Widget 空窗口中l1->setParent(this);

此時運行,在窗口內就可以顯示出效果

QFont

QFont是用來設置字體的,常用方法有:

      QLabel *l2 = new QLabel("QFont字體測試", this);//這是Qlabel的構造函數重載,可以直接設置內容,和指定parent,和setParent和setText這兩句代碼效果一致// 設置字體QFont font;//創建對象font.setBold(true);//是否加粗font.setFamily("楷體");//設置字形font.setItalic(true);//是否傾斜font.setPointSize(20);//設置字號font.setWeight(QFont::Black);//設置加粗// 設置l2應用字體l2->setFont(font);

此時運行可以看到效果

QPushButton

是一個按鈕

//方法一:
QPushButton *btn1 = new QPushButton;
btn1->setText("按鈕1");
btn1->resize(80, 30);
btn1->move(50, 0);
btn1->setParent(this);// 參數1: 按鈕中的文本
// 參數2: 父組件設置
QPushButton *btn2 = new QPushButton("按鈕2", this);
btn2->move(200, 0);
btn2->setFont(QFont("楷體"));

QLineEdiit

是一個單行文本框,常用的方法有

QLineEdit *txt = new QLineEdit;
txt->resize(100, 40);//設置大小
txt->setText("請輸入內容");//設置文本內容
txt->resize(100, 30);
txt->move(200, 30);//移動位置
txt->setParent(this);//設置在哪個窗口

可以通過這些控件制作一個登錄界面

  // 窗口設置this->setWindowTitle("游戲登錄");//設置標題this->setFixedSize(500, 300);//設置固定大小// 請登錄標題QLabel *loginLabel = new QLabel("請登錄", this);//新建一個label然后指定父和內容loginLabel->setFont(QFont("黑體", 30, QFont::Black));//字體loginLabel->resize(150, 50);//指定大小loginLabel->move(177, 20);//移動位置// 提供給賬號和密碼標簽使用的字體QFont f("黑體", 14);// 賬號設置QLabel *accountLabel = new QLabel("賬號:", this);accountLabel->move(85, 98);accountLabel->setFont(f);QLineEdit *accoutEdit = new QLineEdit(this);accoutEdit->move(140, 95);accoutEdit->resize(250, 40);accoutEdit->setPlaceholderText("賬號名/手機號/郵箱");// 密碼設置QLabel *pwdLabel = new QLabel("密碼:", this);pwdLabel->move(85, 160);pwdLabel->setFont(f);QLineEdit *pwdEdit = new QLineEdit(this);pwdEdit->move(140, 155);pwdEdit->resize(250, 40);pwdEdit->setPlaceholderText("密碼");// setEchoMode 用來設置QLineEdit 中的文本狀態// QLineEdit::Normal: 正常狀態,明文顯示// QLineEdit::Password: 密碼狀態, 密文顯示// QLineEdit::PasswordEchoOnEdit: 輸入時明文,失焦時密文pwdEdit->setEchoMode(QLineEdit::Password);// 切換按鈕QPushButton *chgBtn = new QPushButton("明文", this);chgBtn->resize(60, 40);chgBtn->move(330, 155);// 重置和登錄按鈕QPushButton *resetBtn = new QPushButton("重置", this);QPushButton *loginBtn = new QPushButton("登錄", this);resetBtn->resize(80, 40);loginBtn->resize(80, 40);resetBtn->move(135, 220);loginBtn->move(285, 220);

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

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

相關文章

常用 Python 編輯器

可以使用任何文本編輯器來編寫 Python 程序,只要遵循 Python 語法且保存為文件,程序都可以通過 python 命令運行。不過,使用功能豐富的專用編輯器會帶來更好的編程體驗。 當今最常用的幾個 Python 編輯器(也稱 IDE 或代碼編輯器&a…

Java+Vue開發的電子采購管理系統,助力企業采購智能化,提升效率促發展

前言: 在當今數字化時代,企業采購管理面臨著提高效率、降低成本、增強透明度等諸多挑戰。傳統的采購模式往往存在流程繁瑣、信息傳遞不及時、管理難度大等問題。電子采購管理系統應運而生,它借助先進的互聯網技術和信息化手段,將…

嵌入式網絡通信與物聯網協議全解析:Wi-Fi、BLE、LoRa、ZigBee 實戰指南

來源:0voice/EmbeddedSoftwareLearn 一、為什么嵌入式一定要搞懂網絡通信? 在傳統的裸機或單機嵌入式項目里,我們習慣了“點燈、串口、IC/SPI、RTOS 多任務”這樣的套路。但當一個設備需要與云平臺、手機 App 或其他設備實時交互時&#xff…

【補充筆記●推薦方案】解決 Docker “open \.\pipe\docker_engine: Access is denied” 權限問題

starting services: initializing Docker API Proxy: setting up docker api proxy listener: open \\.\pipe\docker_engine: Access is denied.引言 【筆記】解決 WSL 遷移后 Docker 出現 “starting services: initializing Docker API Proxy: setting up docker ap” 問題-…

AI編程工具深度對比:騰訊云代碼助手CodeBuddy、Cursor與通義靈碼

騰訊云代碼助手 CodeBuddy 智能代碼補全:基于上下文和編輯行為預測代碼,支持行內補全、函數塊生成及注釋轉代碼,覆蓋200編程語言和框架,可減少70%以上的鍵盤輸入。Craft智能體:支持自然語言驅動的多文件協同開發&…

Redis 的集群

深入理解 Redis 的集群模式與高可用機制 Redis 是一款廣泛應用于高性能緩存與存儲系統的 NoSQL 數據庫。隨著業務的發展,如何提升 Redis 的高可用性和水平擴展能力成為架構設計的關鍵。本篇博客將系統講解 Redis 的不同集群模式及其高可用策略,深入剖析其…

基于Dify平臺構建AI應用

2022年底openAI的chatgpt的出現,讓人們看到生成式AI的能力如此強大,引燃了生成式AI的一波浪潮。2025年春節前,DeepSeek的橫空出世讓大模型這個領域變得人人都可以參與進來,生成式AI大模型不再有非常高的顯卡的門檻,普通…

Python tikinter實現打開指定ip的電腦攝像頭

以下是一個使用Python的tkinter和OpenCV庫實現打開指定IP攝像頭的應用程序。這個程序允許用戶輸入IP攝像頭的URL,并實時顯示攝像頭畫面,同時支持截圖和錄制功能。 登錄后復制 import tkinter as tk from tkinter import ttk, messagebox, filedialog imp…

OpenCV插值方法詳解:原理、應用與代碼實踐

一、引言 在數字圖像處理中,插值是一種基本且重要的技術,它廣泛應用于圖像縮放、旋轉、幾何變換等場景。OpenCV作為最流行的計算機視覺庫之一,提供了多種插值方法供開發者選擇。本文將全面介紹OpenCV中的插值技術,包括各種方法的…

創客匠人解析:身心靈賽道創始人 IP 打造核心策略

在當代社會焦慮情緒蔓延的背景下,身心靈賽道正以萬億級市場規模成為知識變現的新藍海。作為知識變現領域的重要參與者,創客匠人通過服務超 5W 知識博主的實踐經驗,揭示了該賽道中創始人 IP 打造的底層邏輯 ——IP 不僅是形象符號&#xff0c…

Rust 和C++工業機器人實踐

Rust 調用Cursor案例 Cursor 的這些功能可以顯著提升開發效率,減少重復勞動,適合個人開發者和團隊協作使用。 讀取文件內容并處理 使用Cursor讀取文件內容并逐行處理: use std::io::{Cursor, BufRead};let data = "Line 1\nLine 2\nLine 3".as_bytes(); let c…

llama.cpp學習筆記:后端加載

單例 struct ggml_backend_registry {std::vector<ggml_backend_reg_entry> backends;std::vector<ggml_backend_dev_t> devices;// ... }struct ggml_backend_reg_entry {ggml_backend_reg_t reg;dl_handle_ptr handle; };typedef struct ggml_backend_reg * ggm…

Prompt工程標準化在多模型協同中的作用

&#x1f680; 在AI模型"群雄逐鹿"的時代&#xff0c;如何讓這些"AI武林高手"協同作戰&#xff1f;答案可能藏在一個看似平凡卻至關重要的概念中&#xff1a;Prompt工程標準化。 &#x1f4da; 文章目錄 引言&#xff1a;AI模型的"巴別塔"困境什…

Java面試寶典:基礎五

104. 源文件命名規則 題目:主類名為 a1,保存它的源文件可以是? 選項: A. a1.java B. a1.class C. a1 D. 都對 答案:A 解析: Java 源文件必須與公共類名完全匹配(區分大小寫),后綴為 .java。.class 是編譯后的字節碼文件,非源文件。105. Java類的本質 題目:Java類…

Pycaita二次開發基礎代碼解析:幾何特征統計、跨零件復制與發布技術的工業級實現

本文將從工業實踐角度深入剖析CATIA二次開發中的三項核心技術&#xff1a;幾何特征量化分析、跨零件特征遷移和產品對象發布。全文嚴格基于提供的類方法代碼展開解析&#xff0c;不做任何修改和補充。 一、幾何圖形集特征統計技術&#xff1a;設計復雜度的精確量化 方法功能解…

入門級STM32F103C8T6無人機(共兩張)

入門級STM32F103C8T6無人機&#xff08;原理圖其一&#xff09; 一、STM32F103C8T6 最小系統電路中各接口&#xff08;引腳&#xff09;的解釋及作用 一&#xff09;電源相關引腳 引腳名稱說明3.3V為芯片及部分外圍電路提供 3.3V 工作電源&#xff0c;保障芯片正常運行所需的電…

Git安裝全攻略:避坑指南與最佳實踐

1、系統環境檢查 確認操作系統版本&#xff08;Windows/macOS/Linux&#xff09;及位數&#xff08;32/64位&#xff09;檢查是否已安裝舊版Git&#xff0c;避免版本沖突確保系統環境變量配置權限 2、下載安裝包注意事項 官方下載地址推薦&#xff08;避免第三方鏡像源&…

AlpineLinux安裝部署MariaDB

簡單來說,MariaDB被視為MySQL的一個社區驅動的分支,它保留了MySQL的許多特性和功能,同時引入了一些新的特性和改進。許多用戶和組織選擇使用MariaDB,因為它提供了更多的自由度和對未來許可證變更的保護。而對于一些需要特定Oracle支持或特定MySQL功能的用例,依然使用MySQL…

SpringBoot醫療用品銷售網站源碼

概述 一個基于SpringBoot框架開發的醫療用品銷售網站完整項目源碼&#xff0c;包含用戶管理、商品展示、訂單處理等完整電商功能。該項目采用SpringBoot框架開發&#xff0c;代碼規范、結構清晰&#xff0c;非常適合二次開發或學習參考&#xff0c;幫助開發者快速搭建醫療用品…

使用CSS創建帶三角形指示器的氣泡框

在網頁設計中&#xff0c;氣泡框&#xff08;或工具提示&#xff09;是一種常見的UI元素&#xff0c;用于突出顯示信息或提供額外說明。本文將介紹如何使用純CSS創建一個簡單的氣泡框&#xff0c;并添加一個三角形指示器。 HTML結構 首先&#xff0c;我們有一個簡單的HTML結…