2014-03-06 44 views
0

我想讓我的JLabel覆蓋整個框架,但是當我這樣做時它不會覆蓋文本框和確定按鈕。我如何讓我的JLabel涵蓋整個幀內容。Netbean Java Swing,JPanel/Jlabel不能覆蓋整個框架

enter image description here

P/S我想使這個jlabel作爲背景,所以我可以把我的圖標jlabel作爲背景圖片。

+1

設置的佈局管理器'JLabel'其他組件添加到它...除了表格編輯器不會讓你需要手動做... – MadProgrammer

+0

即時通訊對不起,我是新來的netbean和java,但我可以在哪裏設置佈局經理。感謝MadProgrammer – kkk

+0

你想要做的事情不容易在表單編輯器中實現... – MadProgrammer

回答

4

這是我會做的。使用JPanel作爲背景,並輸入一些自定義的繪圖代碼。

  1. 將一個JPanel拖動到窗體並展開以覆蓋整個框架,作爲背景。

  2. 右鍵單擊JPanel,然後從上下文菜單中選擇自定義代碼。你會看到下面的對話框。您現在可以編輯代碼。

    enter image description here

  3. 確保從下拉菜單中選擇自定義創建下來,鍵入此

    jPanel1 = new JPanel() { 
        BufferedImage img; 
        { 
         try { 
          img = ImageIO.read(getClass().getResource("/resources/stackoverflow5.png")); 
         } catch (IOException ex) { ex.printStackTrace(); } 
        } 
    
        @Override 
        protected void paintComponent(Graphics g) { 
         super.paintComponent(g); 
         g.drawImage(img, 0, 0, getWidth(), getHeight(), this); 
    
        } 
    }; 
    
  4. 你可能要解決進口。只要按下Ctrl鍵++

  5. 你也必須將圖片的路徑更改爲您的路徑。

這是我的文件結構

enter image description here

而這裏的結果

enter image description here

+1

+1和我投你的答案,因爲我相信是通過代碼完成的事情而不是取決於平臺編輯器對我們的學習發展是非常有益的。 – kkk

0

好吧,我找到了答案here。從教程中,當我們試圖讓Jpanel和Jlabel覆蓋整個Jframe時,我們必須:

1)右鍵單擊Jframe。 2)選擇設置佈局 3)查找並單擊空佈局 4)然後,您可以編輯您的Jlabel以覆蓋整個框架,如下所示。感謝那些幫助的人。

enter image description here

P/S:我知道感謝在堆棧溢出勸阻,但很難剋制自己這樣做。再次感謝。