目錄
Swing分為:
add
圖檔字尾名
Swing菜單
布局
背景圖的設定
JButton
Jlable
JTextField
JTextArea
複選框
單選按鈕
JList 構造函數
組合框
調字型
Font 類的構造函數
Swing分為:
- 頂級容器
- 中間容器
- 元件
給界面分開設定
給自己寫一個界面 實質是自己寫一個類 繼承JFrame 其次JPanel也可以這樣被繼承
add
用于添加
比如 JFrame add JPanel 或者 JPanel add元件
圖檔字尾名
字尾名不要直接修改 如果真想改 要用工具轉化
Swing菜單
在頂級容器中 設定菜單
最外面 菜單欄JMenuBar
中間 菜單JMenu
菜單裡面 菜單項JMenuItem
其中菜單欄的添加是特殊的
菜單欄 加入Jframe的時候 使用的不是add 而是setJMenuBar
布局
用于管理元件位置的方式
1、自由布局
由中間容器設定布局 因為元件在中間容器裡
setLayout(null);
所有元件 不會有預設位置和大小 是以不能顯示
是以咱們自己設定元件布局的布局和大小
方法1:
btn1.setLocation(200,200);//設定位置
btn1.setSize(120,36);//設定大小
方法2:
myfield.setBounds(200,90,100,100);
2:FlowLayout 流式布局
為Jpanel的預設布局 将元件一排排放置 如果放不下 就自動往下掉
構造函數FlowLayout(FlowLayout.CENTER,水準間距,垂直間距))
3:BorderLayout: 邊界布局
五個區域:North上,South下,East右,West左,Center中 優先滿足上下左右 剩下的給中
不同界面大小中 上下高度不變 左右寬度不變
setPreferredSize();//設定首選大小
4:GridLayout 網格布局
讓元件 呈現網格效果
//網格布局 兩個參數 一個代表行 一個代表列 行優先滿足
setLayout(new GridLayout(row,cols));
5:CardLayout 卡片布局
将多個元件堆成一摞的布局
背景圖的設定
繪制背景圖的方法swing自帶
但是我們重寫該方法
在JPanel中
g.drawImage(圖,x,y,w,h,null)
//不能改變大小
setResizable(flase);
JButton
JButton(Icon icon):icon表示使用的圖示
例子:
ImageIcon buttonIcon1 = new ImageIcon("images/1.gif");
JButton b1 = new JButton("First Button", buttonIcon1);
Jlable
JLabel(Icon icon):icon表示使用的圖示
JLabel(String text,Icon icon,int align):text表示使用的字元串; icon表示使用的圖示;align表示水準對齊方式,其值可以為:LEFT、RIGHT、CENTER。
例子:
ImageIcon icon = new ImageIcon("Calv.gif");
JLabel calv_label = new JLabel("這是 Calvin", icon,
SwingConstants.LEFT);
JTextField
JTextField 元件允許輸入或編輯單行文本
JTextArea
JTextArea 元件用于接受來自使用者的多行文本
實作可滾動界面
複選框
JCheckBox 類具有下列構造函數:
JCheckBox()
JCheckBox(Icon icon)
JCheckBox(Icon icon, boolean selected)
JCheckBox(String text)
JCheckBox(String text, boolean selected)
JCheckBox(String text, Icon icon)
JCheckBox(String text, Icon icon, boolean selected)
單選按鈕
單選按鈕允許使用者從多個選項中選擇其中一個
ButtonGroup 用于在 Swing 中建立組
JRadioButton 對象可使用下列構造函數建立:
JRadioButton()
JRadioButton(Icon icon)
JRadioButton(Icon, boolean selected)
JRadioButton(String text)
JRadioButton(String text, boolean selected)
JRadioButton(String text, Icon icon)
JRadioButton(String text, Icon icon, boolean selected)
JList 構造函數
public JList() : 使用空模型構造 JList
public JList(ListModel dataModel) :構造一個清單,用它顯示指定模型中的元素。
public JList (Object[ ] listData) :構造一個清單以顯示指定數組listData的元素。
JList 不支援滾動。要啟用滾動,可使用下列代碼:
組合框
文本域和下拉清單的組合
在 Swing 中,組合框由 JComboBox 表示
構造函數如下:
public JComboBox() : 此構造函數使用預設資料模型建立 JComboBox
public JComboBox(ComboBoxModel asModel) : 使用現有 ComboBoxModel 中的項目的組合框
public JComboBox(Object [] items) : 包含指定數組元素的組合框
調字型
代碼如下JLabel jl1 = new JLabel("床前明月光"); //建立1個JLabel執行個體
Font font = new Font("宋體", Font.PLAIN, 25);//建立1個字型執行個體
jl1.setFont(font);//設定JLabel的字型
jl1.setForeground(Color.PINK);//設定文字的顔色
Font 類的構造函數
public Font(String familyName,int style,int size)
具體解釋如下:
familyName 是字型類型,例如宋體、仿宋、Times New Roman 等;
style 是字型風格,例如斜體字、加粗等;
size 是字型大小,其預設機關為 pt(磅),數字越大、字就越大(例如 12pt 字比 10pt 的字要大)。
官方提供 4 種字型風格固定值,如下:
Font.PLAIN(普通)
Font.BOLD(加粗)
Font.ITALIC(斜體)
Font.BOLD+ Font.ITALIC(粗斜體)