![](/img/trans.png)
[英]Windows vs. Linux vs. Mac: Different php extensions with same struct name and some shared files
[英]Different layout between Mac and Windows/Linux (same *.ui files)
我正在使用Qt Framework部署我的應用程序。 在Windows和Linux中,布局的行為是相同的。 如果我調整窗口的大小,布局就會適應。 在Mac OS中不會發生這種情況。 要為Mac開發,我使用的是虛擬機(分辨率為1024x768),但是,當我嘗試在“真正的” Mac(分辨率最大)的Mac中啟動捆綁包時,結果會很糟糕!
我放了一些照片:
MAC-虛擬機(1024x768)-第二個選項卡(不正常)**
**第二個標簽“ Rubrica Contatti”的設計類似於第一個標簽“ Ricettario”。 在設計器中,第二個選項卡似乎正常,在運行時不行!
我試圖創建一個新項目進行測試。 我已經用表格布局設置了中央窗口小部件。 我創建了2個包含這些項目的小部件(每個小部件都有一個網格布局):
所有這三個項目都聚集在垂直布局中。 我將左側小部件放在QSizePolicy :: Minimum中 ,將右側小部件放在QSizePolicy :: Preferred中 。 在Qt Designer中,左側面板較小,右側面板水平放大。 當我啟動應用程序時,兩個小部件的寬度都相同,並且位於窗口的中心。
注意:
打開任何項目時,都會在“常規消息”中看到此文本。
Warnings while parsing QML type information of /Users/denny/Qt/5.5/clang_64/qml:
<dump of /Users/denny/Qt/5.5/clang_64/qml>:1:24: Reading only version 1.1 parts.
<dump of /Users/denny/Qt/5.5/clang_64/qml>:10:5: Expected only Component and ModuleApi objects definitions.
可能是原因嗎?
問題仍然存在,但現在已經解決了……
QApplication::setStyle("fusion");
我的應用程序不會使用Mac主題,但會使用Fusion主題...
注意:
圖形比較丑陋,但是可以用!
QSizePolicy::Minimum
為QSizePolicy::Minimum
。 這意味着該小部件可以更大,但是沒有必要對其進行擴展 。 QSizePolicy::Preferred
為QSizePolicy::Preferred
。 這意味着如果有空間可以進一步使用它 。 將左面板小部件放在單個小部件中,將右面板小部件放在另一個小部件中,然后使用表單布局。 表單布局通常為左右設置正確的尺寸策略。
發生這種情況是因為不同的樣式使用了不同的擴展策略。 例如,QFormLayout處理枚舉QFormLayout :: FieldGrowthPolicy。
QFormLayout::FieldsStayAtSizeHint
這是QMacStyle的默認設置。
QFormLayout::AllNonFixedFieldsGrow
這是大多數樣式的默認策略。
QFormLayout::ExpandingFieldsGrow
這是Plastique的默認策略。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.