Java中的GUI設計總結


總體包含關系(JFrame(JPanel(各種小組件)))

jPanel1.add(jl);
jf.add(jPanel1);

 類具有單一職責,一般JFrame一個類,JPanel一個類

public class MyUi extends JFrame{//為JFrame設置一個單獨的類,負責相關組件組裝
  }
public class MyJpanel extends JPanel{}//為JPanel設置單獨類,只負責JPanel相關設置
 

 

一、窗口

JFrame jf=new JFrame("進程調度");

設置窗口大小

jf.setSize(width, height);//設置窗口大小
this.setPreferredSize(new Dimension(width, height));//用這個方法窗口邊框會顯示不出來

 

設置窗口居中

Toolkit kit=Toolkit.getDefaultToolkit();//設置窗口居中
Dimension screensize=kit.getScreenSize();
jf.setLocation((screensize.width-width)/2, (screensize.height-height)/2);//width ,height為窗口的寬和高

設置窗口關閉

jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//關閉
jf.setVisible(true);//設置窗口是否可見

 

二、布局

1.流式布局

FlowLayout f=new FlowLayout();//流式布局
jf.setLayout(f);//往窗口內添加布局

三、面板組件(JPanel)

JFrame窗口中添加JPanel控制面板組件

JPanel jPanel=new JPanel();

設置JPanel的邊框大小

myJpanel.setPreferredSize(new Dimension(200, 300));//這個能顯示
myJpanel.setSize(new Dimension(200, 300));//這個邊框會顯示不出來

 

四、各種小組件

1.標簽組件(JLable)

JLabel jl3=new JLabel("運行結果");

2.按鈕(JButton)

JButton jButton=new JButton("開始調度實行");

一般情況下為按鈕注冊監聽器

jButton.addActionListener(new ActionListener() {

    });//內部監聽器

 

3.文本框(JTextFile)

JTextField jTextField=new JTextField();

為文本框設計大小

jTextField.setPreferredSize(new Dimension(300, 200));

 

4.文本區(JTextArea)

JTextArea jTextArea=new JTextArea();

為文本區設計大小

jTextArea.setPreferredSize(new Dimension(300, 650));

 

為文本區或文本框添加下拉框

JScrollPane jScrollPane=new JScrollPane(jTextArea);//為文本區添加邊框

當為文本區(JTextArea)或文本框(JTextFile)設計邊框大小時,若加了滾動框,直接設計滾動框的大小即可(若加滾動框后,去設計文本框或文本區大小時,若其內容超過大小,不顯示滾動條框)

jScrollPane.setPreferredSize(new Dimension(300, 400));

5.單選按鈕(JRadioButton)

  JRadioButton jr1=new JRadioButton("FCFS");
  JRadioButton jr2=new JRadioButton("SJF");
  JRadioButton jr3=new JRadioButton("PSA");
  JRadioButton jr4=new JRadioButton("RR時間片輪轉");

判斷單選框選項是否被選中(可用在監聽器中判斷是否被選中)

jr1.isSelected()

 6.多選框(JCheckBox)

JCheckBox jCheckBox1=new JCheckBox("蘋果");
JCheckBox jCheckBox2=new JCheckBox("香蕉");
JCheckBox jCheckBox3=new JCheckBox("梨子", true);//設置是否被選中

判斷是否被選中

jCheckBox1.isSelected()

可以為其添加狀態監聽器,用於監聽其狀態的改變

jCheckBox1.addChangeListener(new ChangeListener() {
        
        @Override
        public void stateChanged(ChangeEvent e) {
        JCheckBox checkBox=(JCheckBox) e.getSource();//返回鼠標點擊對象
                System.out.println(checkBox.getText()+"狀態改變!");        
            
        }
    });

 


免責聲明!

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



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