QT的布局和彈簧及其代碼解讀

this指的是真正的當前正在顯示的窗口

main函數:

Widget w是生成了一個主窗口,QT Designer是在這個主窗口里塞組件

w.show()用來展示這個主窗口

頭文件:

namespace Ui{class Widget;}中的class Widget和下面的class Widget不是一個東西

Ui::class Widget記錄的是在Qt Designer中的控件的位置大小布局等等信息

class Widget具體實現功能的

這里的兩個宏QT_BEGIN_NAMESPACE和QT_END_NAMESPACE估計就是給這個class Widget賦予其成員信息的,當然名字是可以修改的

源文件:

在實際開發中可能遇到的問題:

解決方法:

要加上這樣一句話

此處的verticalLayout指的是你最大的那個布局(包含所有控件的布局,一般是垂直布局的),這樣寫的作用就是讓這個verticalLayout這個大布局隨著窗口大小的改變而改變,因為布局是會自動匹配當前窗口大小的。如果不加那這個布局的大小就不會變,這個大布局變了,其他小布局也會變。但關鍵是這個大布局得變!(這個大布局包含了所有的小布局)

要理解這個首先得明白Qt Designer中的Widget和你實際窗口的Widget不是一回事,Qt Designer中的Widget只是設計圖紙。或許verticalLayout可以跟著你Qt Designer中的Widget中的大小變化而變化,但是你Qt Designer中的Widget大小是不會變的,因為它只是圖紙,變的是實際窗口的Widget大小,所以才要加上這一句話,讓布局跟著實際窗口變化而變化。都是這樣子做Qt Designer中的Widget大小任然不變,變的是verticalLayout這個布局的大小(包含了里面的所有控件的大小和位置信息也變)。

(比較難以理解哈,自己看多幾次)

this指向的就是當前實實在在在顯示的窗口,這個this是會循環的,在之前講過,只要你的窗口發生變動就會變化

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

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

相關文章

《AI大模型應知應會100篇》第52篇:OpenAI API 使用指南與最佳實踐

第52篇:OpenAI API 使用指南與最佳實踐 📌 摘要 本文將帶你從零開始掌握 OpenAI API 的核心使用方法,涵蓋從基礎調用到高級功能的完整實戰路徑。通過詳細的代碼示例、圖文解析和可運行的 Python 腳本,幫助你快速上手 GPT-3.5、GP…

C#學習7_面向對象:類、方法、修飾符

一、類 1class 1)定義類 訪問修飾符class 類名{ 字段 構造函數:特殊的方法(用于初始化對象) 屬性 方法... } eg: public class Person { // 字段 private string name; private int a…

湖北理元理律師事務所:債務優化中的“生活保障”方法論

債務危機往往伴隨生活質量驟降,如何在還款與生存間找到平衡點,成為債務優化的核心挑戰。湖北理元理律師事務所基于多年實務經驗,提出“雙軌并行”策略:法律減負與生活保障同步推進。 債務優化的“溫度法則” 1.生存資金預留機制…

Jetpack Compose與Kotlin UI開發革命

Jetpack Compose + Kotlin:Android UI 開發的革命 簡介 Jetpack Compose 是 Google 推出的現代 Android UI 工具包,結合 Kotlin 語言,徹底改變了傳統 Android 開發的模式。過去,開發者依賴 XML 布局和命令式編程(如 findViewById 和手動更新視圖),導致代碼冗長且易出錯…

基于pyqt的上位機開發

目錄 安裝依賴 功能包含 運行結果 安裝依賴 pip install pyqt5 pyqtgraph pyserial 功能包含 自動檢測串口設備,波特率選擇/連接斷開控制,數據發送/接收基礎框架,實時繪圖區域(需配合數據解析) ""&q…

QT人工智能篇-opencv

第一章 認識opencv 1. 簡單概述 OpenCV是一個跨平臺的開源的計算機視覺庫,主要用于實時圖像處理和計算機視覺應用?。它提供了豐富的函數和算法,用于圖像和視頻的采集、處理、分析和顯示。OpenCV支持多種編程語言,包括C、Python、Java等&…

Python自學第5天:字符串相關操作

1.字符串運算符 作符描述字符串連接*重復輸出字符串[]通過索引獲取字符串中字符[ : ]截取字符串中的一部分,遵循左閉右開原則,str[0:2] 是不包含第 3 個字符的。in成員運算符 - 如果字符串中包含給定的字符返回 Truenot in成員運算符 - 如果字符串中不包…

RabbitMq(尚硅谷)

RabbitMq 1.RabbitMq異步調用 2.work模型 3.Fanout交換機(廣播模式) 4.Diret交換機(直連) 5.Topic交換機(主題交換機,通過路由匹配) 6.Headers交換機(頭交換機) 6…

分庫分表后復雜查詢的應對之道:基于DTS實時性ES寬表構建技術實踐

1 問題域 業務發展的初期,我們的數據庫架構往往是單庫單表,外加讀寫分離來快速的支撐業務,隨著用戶量和訂單量的增加,數據庫的計算和存儲往往會成為我們系統的瓶頸,業界的實踐多數采用分而治之的思想:分庫…

CVE-2024-4577:Windows 編碼錯誤

CVE-2024-4577是一個 PHP-CGI 漏洞,就是其中一種情況:雖然有這個版本,但由于 PHP 經常被反向移植,因此無法可靠地使用。 這篇博文詳細介紹了如何研究 CVE-2024-4577 以及當前用于檢測它的方法。 CVE-2024-4577 CVE-2024-4577 是 Windows 版 PHP 安裝中的一個高危漏洞,會…

NetBox Docker 全功能部署方案(Ubuntu 22.04 + Docker)

環境準備 檢查操作系統版本: 本方案使用 Ubuntu 22.04,并在 VMware 虛擬機中運行。通過以下命令檢查系統版本: lsb_release -a 如果未安裝 Ubuntu 22.04,請下載并安裝一個全新的系統。 更新系統軟件源: 更新軟件包列表…

DeepSeek Copilot idea插件推薦

🌌 DeepSeek Copilot for IntelliJ IDEA 讓 AI 成為你的編程副駕駛,極速生成單元測試 & 代碼注釋驅動開發! 🚀 簡介 DeepSeek Copilot 是一款為 IntelliJ IDEA 打造的 AI 編程助手插件,它能夠智能分析你的代碼邏輯…

QT中的JSON

1.JSON的兩種數據格式 JSON有兩種數據格式:JSON對象和JSON數組 JSON數組: JSON數組格式:[元素1,元素2,元素3,......元素n] JSON數組中的元素可以是同一類型,也可以使不同類型,可以嵌套JSON數組…

詳細剖析傳輸層協議(TCP和UDP)

詳細講解傳輸層的網絡協議,為什么TCP是可靠連接協議,憑什么能做到不丟包,有哪些機制保證可靠呢? TCP/UDP UDPTCP**三次握手和四次揮手****滑動窗口****擁塞控制**(socket套接字)**listen的第二個參數** UD…

數據可視化:藝術與科學的交匯點,如何讓數據“開口說話”?

數據可視化:藝術與科學的交匯點,如何讓數據“開口說話”? 數據可視化,是科技與藝術的結合,是讓冰冷的數字變得生動有趣的橋梁。它既是科學——講究準確性、邏輯性、數據處理的嚴謹性;又是藝術——強調美感…

解決使用lettuce連接Redis超時的問題(tcpUserTimeout 參數失效問題)

問題背景 lettuce 連接Redis的主從實例,當主節的主機異常下電重啟后,由于沒有發送RST 包,導致 lettuce 一直在復用之前的TCP鏈接,然后會出現連接超時的情況。一直出現io.lettuce.core.RedisCommandTimeoutException: Command tim…

如何使用python保存字典

在Python中,可以通過多種方式將字典(dict)保存到文件中,并能夠隨時讀取恢復。以下是幾種常見的方法: 1. 使用 json 模塊(推薦) 適用場景:需要人類可讀的文件格式,且數據不…

SQL 與 Python:日期維度表創建的不同選擇

文章目錄 一、日期維度表概述日期維度表結構 二、使用 SQL 創建日期維度表2.1 表結構設計2.2 數據插入2.3 SQL 創建方式的優勢與局限 三、使用 Python 創建日期維度表3.1 依賴庫引入3.2 代碼實現3.3 Python 創建方式的優勢與局限 四、應用場景與選擇建議4.1 應用場景4.2 選擇建…

如何用postman進行批量操作

業務場景: 有些時候,我們會需要批量的將SAP B1系統中的幾千條的數據刪除或者取消單據,這個時候,一條條去操作,指定是到猴年馬月了。SAP Business One本身提供了DTW這個工具,但是這個更新,可以操…

Mysql如何完成數據的增刪改查(詳解從0到1)

前言: Mysql可能是每個程序員的必修課,可以說是使用起來是沒有什么問題的,但是作為一名合格的程序猿,深入學習Mysql的內部工作原理是非常有必要的,主要是理解和學習Mysql的底層思想,希望在日后如遇到一些&…