1. 程式人生 > >淺談 Qt 佈局管理器 如何讓控制元件隨著視窗變化

淺談 Qt 佈局管理器 如何讓控制元件隨著視窗變化

Qt 佈局管理器 基礎學習是本文要介紹的內容,學習Qt的時候,參照幫助手冊和相關書籍,其中的例子幾乎都是手動的編寫程式碼。至於方便設計介面的Qt designer的例子幾乎就沒有,想在designer中實現子視窗隨主視窗大小變化而變化,整的我鬱悶了老半天,後來閱讀Qt designer英文手冊,才找到了解決的方法,在此和大家一起分享。下述文字是幫助的英文翻譯和個人感悟。

1.Qt佈局管理器的簡介

Qt Designer 是一個視覺化的基於 Qt 的使用者介面設計工具。用來生成 ui 定義檔案,而不考慮具體的語言。很好使用,掌握其中的佈局管理是學習好Qt Designer的關鍵。

佈局管理器

——在建立的視窗中,為了方便地管理其中的控制元件,而誕生了佈局管理器

將各種控制元件按照實際需要,放在佈局管理器中,可以方便地對其進行管理。此後,視窗大小變化時,其將會自動進行調整變化。

如果你將自己建立的控制元件放在了佈局管理器中,那麼再想手工的改變控制元件的大小時就不有自主了。因為佈局管理器已經掌控了你的控制元件,自動替你進行管理了,不需要你進行移動和調整大小了。

如果你覺著佈局管理器管理的不夠好,那麼你可以通過“breaking layouts”來打破原來的佈局,自己重新手工佈局也行。

此處,我們重點只是討論Qt designer的佈局管理器的使用。

2.Qt designer 佈局管理器的使用方法

首先,選中控制元件,右擊之後,彈出的快捷選單中包括:

HorizontalLayouts and Vertical Layouts,水平和垂直佈局;

The Grid Layout ,網格佈局;

Splitter Layouts,分割器佈局;

The Form Layout,窗體佈局。

其中每個佈局效果到底怎麼樣,我建議大家自己去實踐,來回地試一試就會找到感覺。一般常常使用的是

  1. HorizontalLayouts and Vertical Layouts和The Grid Layout  

下邊通過一個簡單的例子來說明。首先在Qt Designer中建立一個MainWindow主視窗,然後在其中新增一個Label和一個Table Widget控制元件,最終效果如圖1-1所示。

Qt 佈局管理器 基礎學習

圖1-1 佈局前介面

其次,選中兩個控制元件,右擊,彈出快捷選單,如圖1-2所示。

Qt 佈局管理器 基礎學習

圖1-2 設定佈局的快捷選單

再次,選擇Lay Out Vertically選項,效果如圖1-3所示。

Qt 佈局管理器 基礎學習

圖1-3 選擇控制元件佈局後

然後,單擊選中主視窗(注意是單擊主視窗,先取消對所有控制元件的選擇,只選中主視窗),右擊之,在彈出的快捷選單中選擇“Lay Out Vertically”,建立頂級佈局管理器。如圖1-4所示。

圖1-4 設定頂級佈局管理器

Qt 佈局管理器 基礎學習

到此為止,已經完成。儲存之後,按Ctrl+R組合鍵,檢視結果,最大化主視窗,觀察效果哦。呵呵…注意,要想達到預想的效果,頂級佈局管理器的設定是必不可少的哦!