2012-07-24 100 views
2

我正在Windows和OS X上開發一個應用程序,使用Qt框架。
問題是我手動設置了一些小部件的字體大小(在UI設計器中)。
在windows下,字體非常完美,但在osx上,它們太大了。
確實,字體系列已被轉換(MS Shell Dlg 2轉換爲Lucida Grande),但如果已經手動設置,則不是字體大小。Qt跨平臺Windows&Mac:字體大小

所以我決定減少字體大小的代碼,一些#ifdef來,像這樣的例子:

#ifdef Q_OS_MAC 
QFont font = ui->button->font(); 
font.setPixelSize(12); 
ui->button->setFont(font); 
#endif 

它的工作,但是當你有很多的小部件這是一個咬討厭,所以我對任何其他想法都是開放的。

我也有一個qtextedit有這個問題,這個解決方案不起作用,因爲它是需要調整的html代碼。

感謝

回答

1

您可以嘗試在同一時間style sheetapplication全局設置,或一個widget(和它的潛艇)。例如:

#ifdef Q_OS_MAC 
window->setStyleSheet("QWidget{font-size:12px}"); 
#endif 
+0

只有在Windows中調整的字體也需要在osx上調整,其他都很好。 – jitowix 2012-07-25 11:49:37