2013-05-21 55 views
0

我是Qt新手,在更改應用程序的分辨率時遇到問題。我正在使用DirectFB處理嵌入式應用程序。更改屏幕分辨率時的UI問題

我的用戶界面是專爲1280x720,它工作正常!在1920x1080,UI很小,但仍然不錯。主要問題是當分辨率更改爲720x576時,UI非常大,我似乎無法調整窗口小部件中的對象大小或調用調整UI的函數。

這些額外的解決方案選項來自項目啓動後,所以我不知道它。

關於如何解決這個問題的任何想法?我正在考慮設計一個新的用戶界面,僅用於720x576,但這聽起來不太好,對吧?

+0

你可以在720x576上添加UI的屏幕截圖來顯示問題嗎? –

+0

這有點難,因爲我的應用程序是交叉編譯的,然後在機頂盒中運行。事實上,我可以得到一個截圖,但我需要爲此設置一些東西。我會建立併發布在這裏... –

+0

好吧,我只需要問我的經理項目即將展示我們的用戶界面。無論如何,我認爲比不會有問題。 =) –

回答

2

解決方案取決於您想要在低分辨率下做什麼。你是否希望它看起來一樣,但沒有更大的圖像,或者你想顯示不同的設計?在較低的分辨率下使用相同的設計可能並不現實。

要做的第一件事就是連接到QApplication :: desktop()resized事件來檢測是否發生了屏幕分辨率更改。此時,您可以將事件轉發給所有小部件,以調整大小並使用不同的圖像,調整它們的圖像大小,或者顯示爲不同屏幕尺寸創建的不同表單。

根據用戶界面的設計,該解決方案的新設計可能確實是最佳選擇,但我們需要看設計以給出意見。

+0

準確@ Merlin069,我想看起來一樣,但沒有更大的圖像。關於將調整大小的事件連接到QApplication :: desktop()並不那麼簡單,因爲當用戶更改分辨率時,我需要重新啓動機頂盒並使用新分辨率設置DirectFB。 我曾經想過要調整圖像,字體等,總是要在我的用戶界面中驗證我的分辨率,但我正在尋找一個更容易的選擇。聽起來很難用很多分辨率... –

+0

對不起,我錯過了DirectFB是你正在使用的嵌入式設備。如果您希望圖像與屏幕分辨率成比例的相同大小,那麼我認爲您的唯一選擇是在檢測到較低的屏幕分辨率後即時縮小圖像大小,或者有一組單獨的圖像加載,這比第一種選擇要快得多。如果您可能有很多其他解決方案,選擇高分辨率圖像和縮小尺寸將是您工作量最少的工作。 – TheDarkKnight

+0

是@ Merlin069,我認爲這是更好的解決方案。我有一個包含用戶首選項的文件,包括當前的分辨率,所以我正在測試正在使用的分辨率,如果是576我調整圖標,小部件和字體的大小。是不是一個美麗的解決方案,但工作得很好...謝謝你的答案。 –