2009-06-19 84 views
0

我正要向我所在的移動公司建議Qt。但是,事實證明,爲桌面應用程序構建的Qt小部件無法在Windows Mobile 6.0上運行。他們要麼不按比例地擠在屏幕上,要麼延長它,以至於看不到一半的應用程序。下面是一些屏幕截圖:Windows Mobile上的Qt Widget損壞

應用程序窗口延長屏幕:

alt text http://img193.imageshack.us/img193/171/boxesp.jpg alt text http://img193.imageshack.us/img193/9187/wiggly.jpg

,它們被擠壓,相反的方式it is expected:

alt text http://img221.imageshack.us/img221/4084/patient.jpg

所以,雖然我跟着every step of installation procedure,顯然有些事情是錯的。這種腐敗的原因可能是什麼?我不能只是Compile Once and Deploy Everywhere

謝謝。

回答

4

你所有的例子看起來像窗口還沒有被設置爲全屏。這解釋了爲什麼它們不適合屏幕,因爲窗口比顯示屏更大。幾乎所有的窗口都使用windows mobile的全屏模式,因爲沒有足夠的空間容納很多窗口。

最後一個示例看起來像設置爲全屏,但文本信息和圖形元素對於屏幕大小來說很大。

因此總的來說,Qt看起來像最適合桌面的佈局一樣。鑑於桌面分辨率和設備分辨率之間的大小差異,桌面頂部窗口布局幾乎不會在小型設備屏幕上工作。因此,任何爲桌面尺寸分辨率編寫的Qt應用程序的移植都需要GUI中繼,並且重新輸入方法,因爲兩者在臺式機和移動設備之間都有很大不同。

你的想法是「編譯一次,隨處部署」沒有意義。您提供的鏈接是處理MAC OS和MAC OS的版本。

我認爲像Qt這樣的跨平臺GUI庫的主要優點之一是可以在許多不同平臺之間進行編譯而無需更改的一組源代碼。跨桌面平臺是有道理的。在不同的設備平臺上,「kind-of」是有意義的,不同的設備之間的輸入方法可能會有很大的不同,而且主要的GUI概念也可能有很大的不同(比如WM設備和iPhone設備)。

所以想的Qt可以爲你工作,但你必須:

  1. 得出的結論使用全屏模式。
  2. 提供自屏幕尺寸以來的佈局和圖形元素。

如果您希望支持多個設備,您可能會遇到的一個問題是支持多種屏幕尺寸。還支持動態更改protrait和landscape之間的屏幕大小。這些需求是Mobile2Market Certificate requirements的一部分,以及部分新的upcomming Microsoft Mobile Marketplace(雖然我找不到要求)。

+0

JFY,它寫的是Qt,而不是QT。 – 2009-06-20 08:57:52

2

在做嵌入式用戶界面時,有許多事情你無法完成與桌面應用程序完全相同的操作。所以確實,大部分用戶界面不會被編寫一次,在任何地方運行。也就是說,通常可以編寫相同的代碼,只需使用不同的UI文件即可滿足嵌入式系統的限制條件。

另一方面,如果您在觸摸屏上使用了很多複選框,請準備好讓人們抱怨他們很難切換。