2014-01-20 107 views
2

我使用DWTGitHub repository(最新版本)與recomended建築參數的Windows奇怪DWT-控制風格

dmd "myGuiApp.d" -IC:\\D\\dwt\\imp^
-JC:\\D\\dwt\\org.eclipse.swt.win32.win32.x86\\res^
-L+C:\D\dwt\lib\ -L+org.eclipse.swt.win32.win32.x86.lib^
-L+dwt-base.lib -L/SUBSYSTEM:windows:4 

的GUI應用程序可在Win XP的運行, Win 7,但DWT控件的風格類似於較舊的Windows版本,如Win 98(沒有按鈕上的顏色漸變,帶有嚴格的角落)。我的第一個想法是將參數SUBSYSTEM更改爲windows:5windows:6,但它沒有幫助。我沒有發現有關谷歌類似問題的提及。

所以,也許有人知道或猜測,我做錯了什麼?

+0

還有一種方法可以做到這一點(正如在[this]結尾提到的那樣(http://hg.dsource.org/projects/dwt-win/raw-annotate/50ff93cdc412/README.txt)文本)添加建築參數(類似於'-L/RC:.. \ res \ resource.res')。 'res'文件可以在'... \ dwt \ win-res'文件夾中找到。 –

回答

3

你可能需要一個清單的exe文件,並有可能調用INITCOMMONCONTROLSEX(我不知道DWT做到這一點與否,我從來沒有真正使用過它)http://msdn.microsoft.com/en-us/library/windows/desktop/bb775697%28v=vs.85%29.aspx

清單在此說明,伴隨着該怎麼辦呢概述:

http://msdn.microsoft.com/en-us/library/windows/desktop/bb773175%28v=vs.85%29.aspx

清單是XML的東西有點那一頁上。 D編譯器沒有用於添加xml權利的編譯指示,但可以將其編譯到資源文件中,或者只是將XML文件命名爲yourexename.manifest並將其放在與exe相同的目錄中。

來自MSDN鏈接: 「清單用XML編寫,應用程序清單文件的名稱是可執行文件的名稱,後跟文件擴展名.manifest;例如,MyApp.exe.manifest。樣本清單顯示了第一部分描述了清單本身。下表顯示了清單描述部分中由assemblyIdentity元素設置的屬性。「

+0

謝謝!你的建議非常有幫助。我只是在'MyApp.exe'附近創建了'MyApp.exe.manifest',並重新構建了**應用程序。 –