[英]JAVA: GUI not showing until mouse hovers over?
我正在嘗試Java中的不同外觀,並且添加了系統外觀,但是直到將鼠標懸停在它們上時,GUI組件才可見。 這是我改變外觀的代碼:
try{
Base base = new Base();
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}catch(Exception e){
e.printStackTrace(System.out);
}
這是GUI組件的代碼:
private void HomeScreen(){
frame.getContentPane().removeAll();
JButton btnNewNote = new JButton("");
btnNewNote.setForeground(Color.WHITE);
btnNewNote.setIcon(new ImageIcon("res/images/NewNote.png"));
btnNewNote.setBounds(385, 29, 34, 34);
btnNewNote.setVisible(true);
frame.getContentPane().add(btnNewNote);
}
一切正常,除了我必須將gui元素懸停在它們上以使其可見。 誰能給我一個原因
從容器中刪除並重新添加組件時,必須在進行更改后調用revalidate()
,然后在容器上repaint()
。
其他事宜:
setBounds()
似乎是Swing新手喜歡創建復雜GUI的最簡單和最佳方法,但您創建的Swing GUI越多,使用它們時將遇到的困難就越大。 當GUI調整大小時,它們不會重新調整組件的大小;它們是需要增強或維護的皇家女巫;放置在滾動窗格中時,它們會完全失敗;在所有平台或與原始分辨率不同的屏幕分辨率下查看時,它們看起來都令人作嘔。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.