簡體   English   中英

將SWING組件放在Java全屏應用程序中的最佳實踐?

[英]Best practice to place SWING components in a Java fullscreen application?

我目前正在創建一個全屏Java應用程序,就像一個自助服務終端應用程序。 問題是,應用程序將在具有不同屏幕尺寸和分辨率的多台不同計算機上運行,​​因此我無法以絕對的方式放置我的SWING組件。

我想知道在創建那種類型的程序時,解決這個問題的最佳方法是什么。 到目前為止,我傾向於使用相對於屏幕尺寸的百分比並相應地定位我的組件。

我預見到的問題是,如果我想分配屏幕的一部分,比方說,JLabel,使用百分比值,標簽在較小的屏幕上會變小,而字母則會贏得更多的字母'能夠完全顯示。

然后解決方案是使用FontMetrics來縮放帶有標簽/按鈕/等大小的文本,但我不太了解FontMetrics類以及為使文本正確而必須進行的所有計算尺寸。

基本上,我想知道的是:我是以正確的方式接近這個還是我為自己做得太復雜了? 我很確定我能按照我剛才描述的方式做到這一點,但如果有一個解決方案只需要一小部分時間,我不想浪費太多時間。

原則上,這就是LayoutManagers的用途: http//download.oracle.com/javase/6/docs/api/java/awt/LayoutManager.html

如果沒有一個默認的適合您的需求,那么您將不得不手動計算出數學,以弄清楚如何以不同的分辨率/寬高比優化組件的位置。 (無論如何,這聽起來像是你要做的。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM