1. 程式人生 > >為面板(JPanel)新增標題

為面板(JPanel)新增標題

需求:用實線把各個面板圈起來,然後把面板的名字寫在圈圈的左上角。

示例:

程式碼:

  1. import java.awt.Toolkit;
  2. import java.awt.event.ActionEvent;
  3. import java.awt.event.ActionListener;
  4. import javax.swing.*;
  5. import javax.swing.border.Border;
  6. public class BorderPanel {
  7.         /**
  8.          *

    Description: 需求:用實線把各個面板圈起來,然後把面板的名字寫在圈圈的左上角。

  9.          */
  10.         public static void main(String[] args) {
  11.                 MyFrame frm = new MyFrame();
  12.         }
  13. }
  14. class
    MyFrame extends JFrame{
  15.         public MyFrame(){
  16.                 this.setSize(200,120);      //        設定窗體大小
  17.                 this.setUndecorated(true);            //    不顯示標題欄與邊框
  18.                 int x = Toolkit.getDefaultToolkit().getScreenSize
    ().width;            //    獲取螢幕寬度
  19.                 int y = Toolkit.getDefaultToolkit().getScreenSize().height;          //   獲取螢幕高度
  20.                 this.setLocation(x/2,y/2);            //    令窗體居中
  21.                 Border border = BorderFactory.createTitledBorder("面板標題");       //     新建邊框
  22.                 panel.setBorder(border);                //      將新建的邊框設定為panel的邊框
  23.                 this.add(panel);
  24.                 btn.addActionListener(new ActionListener(){
  25.                         public void actionPerformed(ActionEvent e) {
  26.                                 System.exit(0);
  27.                         }
  28.                 });
  29.                 panel.add(btn);
  30.                 JLabel description = new JLabel("這是Border的一個使用例項。");
  31.                 panel.add(description);
  32.                 JLabel label = new JLabel("(詳細見程式碼說明)");
  33.                 panel.add(label);
  34.                 this.setVisible(true);
  35.         }
  36. }