qt界面布局筆記之控件垂直布局


概述

關於控件的垂直布局,如果多個控件垂直布局控件很多的情況下,勢必顯示不全。

肯定要出現滾動條,選擇什么樣的容器控件來提供滾動條比較好呢。

一、QScrollArea

可以使用這個容器添加控件,當控件超出容器范文時,會自動出現滾動條

從效率方面考慮不適用場景是,如果垂直排列的控件非常多成百上千個,然而這些控件的排列,將會很好內存,每個控件都需要

提前new出來,雖然我們可能一次看到的控件不過7到8個這樣是比較影響性能的,尤其是這些控件如果會定時刷新,那將是很不適合使用的了。

二、QTableWidget

這個控件也可以自動出現滾動條當行數超出一定范圍的時候

但是QScrollArea不適用的場景這個控件也不適用。控件特別多,如果再是定時刷新的情況下,就不適用了。

三、自己定義實現邏輯

自己定義實現這種方式當控件很多的情況下,不是出現滾動條,而是加個翻頁按鈕,能實現上下翻頁

基本思路就是:界面上布局定死控件個數,比如顯示六個。然而當要顯示的控件很多很多時,先把控件數據現在到內存

,其實界面始終只有六個控件,因為new控件是相當耗資源的,尤其是控件相當多的時候

這樣每次切換頁的時候,只要獲取的對應的控件(早已經設置好的控件)然后改變其數據就可以了。

總結:

QScrollArea、QTableWidget適用於數據量比較小,展示界面的控件個數有限,不會太多的情況,如果數據量很大、如果需要定時刷新建議使用自定義的形式

,自定義形式的缺點就是不會有滾動條,而是添加換頁按鈕。具體如何使用要綜合考量自己的業務場景,從效率,方便性、內存占用等方面綜合考量。

 

初始化的時候把需要的控件都加載出來,根據后台數據來確定控件顯示隱藏可用和不可用,控件的數量是固定死的,也只在界面展示的時候new一次。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM