![](/img/trans.png)
[英]How to center a Delphi form on a 4k screen? (Windows scaling enabled) - poScreenCenter not working
[英]Scaling DbGrid Indicator and DbNavigator Icons on 4K display
我在具有4K顯示屏的HP Spectre x360上使用DPro Rio 10.3。 DbGrid上的指示器和DbNavigator控件的圖標可以在1980 X 1080上縮放,但在4K分辨率下幾乎看不見。 文本在任何分辨率下均可縮放。
我查看了這兩個組件的源代碼,它們包含使用LoadfromResource從可執行文件加載適當圖形的方法。 TDbNavigator在運行時通過虛擬方法SetButtonGlyph調用LoadfromResourse。
此外,DbGrid代碼似乎正在努力以一種方法來縮放指標。 但是,這至少在我的筆記本電腦上不起作用。
僅供參考,我已將表單的Scaled屬性設置為TRUE。 我還嘗試了清單中的幾種設置,但沒有任何不同。
我該如何解決此問題。 是因為這些控件使用16 x 16圖形還是其他原因? 有沒有一種方法可以在可執行資源文件中或在運行時以編程方式用高分辨率替換每個組件的圖形?
我在TMS軟件網站上的帖子中偶然發現了答案。 為了在4k屏幕上正確顯示,DPI感知必須設置為none。 我在里約熱內盧和東京都進行了測試,並且效果很好。 對於Rio,您將選擇Project | Options並轉到Application部分。 選擇清單,然后從DPI Awareness的下拉框中選擇無。
對於東京,還是項目|選項,請轉到“應用程序”,然后取消選中“啟用DPI”。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.