1
我正在寫一個使用涉及表單的Swing程序。提交表單時,我有一個驗證它的函數,並且任何無效字段都應該以紅色突出顯示以進行更正,然後一旦有效,就會將其更改回默認邊界。更改JTextField邊框的顏色而不更改其其他屬性?
目前,我使用以下方法獲取默認JTextField
邊框。
private Border defaultBorder = new JTextField().getBorder();
有沒有辦法做到這一點,而不創建一個不必要的對象?
更重要的是,如何更改邊框的顏色而不影響其他屬性?
'UIManager.getBorder(「Textfield.border」)'取決於外觀和感覺。你也可以使用類似'JLayer'的東西來繪製到你的UI上[例如](http://stackoverflow.com/questions/25274566/how-can-i-change-the-highlight-color-of-a- focused-jcombobox/25276658#25276658) – MadProgrammer 2015-01-21 09:29:29
正如相關[API](http://docs.oracle.com/javase/8/docs/api/javax/swing/JComponent.html#setBorder-javax.swing。 border.Border-)。 – trashgod 2015-01-21 09:58:20
謝謝安德魯;您的解決方案完美運作 – FlyingMonkey 2015-01-21 10:27:56