不久前,我回答了一個堆棧溢出問題,該字體以不當的方式顯示了老撾語的字體。我寫了一個鞦韆GUI來回答堆棧溢出問題。
如果您不熟悉Java Swing,Oracle有一個出色的教程可以使您開始使用JFC/Swing創建GUI。跳過Netbeans部分。
我決定寫一個更通用的字體選擇器GUI,原因有兩個。
我想為自己創建的其他GUI選擇腳本字體。我必須使用OpenOffice來查看我的可用字體。
我認為這將為Github提供良好的搖擺應用。
這是字體選擇器GUI,顯示我的計算機上哪個字體顯示英文短語。我有432個字體變體可以顯示Jtextfield的示例文本。

在GUI的頂部,您可以輸入或複制 /粘貼示例文本。您可以從幾個常見的字體尺寸中進行選擇。在顯示屏字體JButton上左鍵單擊時,您會看到每種字體的示例,在頂部,Java識別的可用字體總數。
這是字體選擇器GUI顯示了我的計算機上哪個字體以老撾語顯示單詞。您可以在示例文本Jtextfield中看到框。我的默認swing gui字體無法顯示單詞。我的系統上只有11個字體變化,只有Dejavu字體才能以正確的位置顯示單詞。

搖擺gui由四個班級組成; fontselectorgui,fonttablecellrenderer,fontdisplaylistener和fontdisplayrunnnable。
Fontselectorgui類是主要GUI類。 Jframe,輸入JPANEL和DISPLIS JPANEL是在此類中創建的。 Jframe是在運行方法中創建的,JPANELS是在單獨的方法中創建的。 jpanel的條目使用BoxLayout,而Display Jpanel使用BorderLayout。
FonttableCellRenderer類是負責在不同字體中呈現JTable單元的JTable Cell渲染器類。
FontdisplayListener班級對Jpanel的JButton做出了回應。因為創建JTable行需要一段時間,所以單獨的FontDisplayRunnable可以在單獨的線程中更新JTable行。這樣做可以保持GUI的響應。