Java實現點擊一個Jlabel增加一個Jlabel的小功能


        當界面生成以后,自己想做一個點擊一個Jlabel增加一個Jlabel,即類似於QQ的添加好友以后可以及時的加進一個好友。自己做了好久,發現不能及時刷新。在網上查了一下,然后自己研究了一小會。發現需要validate這個函數重新布局。寫了一個這個小功能。

package qq.client.tools;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;@SuppressWarnings("serial")
public class ButtonFrame extends JFrame{
      public ButtonFrame() {//構造函數
      buttonPanel = new JPanel();//創建一個jpanel
      this.setSize(200, 500);//設置窗口的大小
      makeButton();  //調用函數
        
      this.add(buttonPanel);
 }
 
 public void makeButton() {
     JLabel buttonFather = new JLabel("I'm father");//創建一個按鈕
     buttonFather.addMouseListener(new MouseListener() {    
    public void mouseReleased(MouseEvent e) {    
    }
    
    @Override
    public void mousePressed(MouseEvent e) {        
    }
    public void mouseExited(MouseEvent e) {    
    }
    public void mouseEntered(MouseEvent e) {
    }
    public void mouseClicked(MouseEvent e) {
        addButton(e);
    }
});
    buttonPanel.add(buttonFather);
 } 
 private void addButton(MouseEvent e) {
  JLabel buttonSon = new JLabel("I'm son");//創建一個標簽
  buttonPanel.add(buttonSon);//添加到面板
  this.validate();
 }
 private JPanel buttonPanel; public static void main(String[] args) {
  new ButtonFrame().setVisible(true);
  
 }
}

       跟刪除Jlabel一樣,沒有用那個函數需要自己刷新界面才會出現增加Jlabel。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM