?? checkandraidodemo.java
字號:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import java.awt.GridBagLayout;
import java.awt.GridBagConstraints;
import java.awt.event.ActionEvent;
public class CheckAndRaidoDemo extends JFrame
implements ActionListener{
private JTextField textDemo;
private JCheckBox ckbBold,ckbItalic;
private JRadioButton rdbRed,rdbGreen,rdbBlack;
private ButtonGroup btg ;
private JPanel checkPanel,radioPanel;
private Container container;
private GridBagLayout Layout;
private GridBagConstraints constraints;
public CheckAndRaidoDemo() {
super("文本處理");
setSize(260,200);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
container=getContentPane();
}
//以設定的網格包布局向面板中添加組件
private void addComponent(JPanel panel,GridBagLayout Layout,
GridBagConstraints gbc,Component com,int row,int column,
int numRows,int numColumns,int Weightx,int Weighty){
gbc.gridx=row;
gbc.gridy=column;
gbc.gridwidth=numRows;
gbc.gridheight=numColumns;
gbc.weightx=Weightx;
gbc.weighty=Weighty;
Layout.setConstraints(com,gbc);
panel.add(com);
}
public void setLayout(){
//向復選框面板添加組件
checkPanel=new JPanel();
checkPanel.setLayout(new GridLayout(2,1));
ckbBold=new JCheckBox("加粗");
ckbBold.addActionListener(this);//注冊監聽器
ckbItalic=new JCheckBox("斜體");
ckbItalic.addActionListener(this);
checkPanel.add(ckbBold);
checkPanel.add(ckbItalic);
//向單選按鈕面板添加組件
radioPanel=new JPanel();
radioPanel.setLayout(new GridLayout(3,1));
rdbRed=new JRadioButton("紅色");
rdbRed.addActionListener(this);
rdbGreen=new JRadioButton("綠色");
rdbGreen.addActionListener(this);
rdbBlack=new JRadioButton("黑色");
rdbBlack.addActionListener(this);
rdbBlack.setSelected(true);//設置單選按鈕為選中
btg=new ButtonGroup();//創建按鈕組,向按鈕組添加單選按鈕。
btg.add(rdbRed);
btg.add(rdbGreen);
btg.add(rdbBlack);
radioPanel.add(rdbRed);
radioPanel.add(rdbGreen);
radioPanel.add(rdbBlack);
//設置框架窗體布局
Layout=new GridBagLayout();
container.setLayout(Layout);
constraints=new GridBagConstraints();
constraints.anchor=GridBagConstraints.CENTER;
//向框架窗口添加文本框
textDemo=new JTextField("示例文字");
constraints.fill=GridBagConstraints.HORIZONTAL;
addComponent((JPanel)container,Layout,constraints,textDemo,0,0,2,1,100,30);
//向框架窗口添加復選框面板
constraints.fill=GridBagConstraints.BOTH;
addComponent((JPanel)container,Layout,constraints,checkPanel,0,1,1,1,50,70);
//向框架窗口添加單選按鈕
constraints.fill=GridBagConstraints.BOTH;
addComponent((JPanel)container,Layout,constraints,radioPanel,1,1,1,1,50,70);
}
public static void main(String[] args) {
CheckAndRaidoDemo frame = new CheckAndRaidoDemo();
frame.setLayout();
frame.show();
}
public void actionPerformed(ActionEvent e) {
int intBold = 0;//intBold和intItalic記錄字體樣式
int intItalic = 0;
//判斷是否單擊了復選框
if (e.getSource()instanceof JCheckBox) {
//判斷黑體復選框是否被選中
intBold = (ckbBold.isSelected() ? Font.BOLD : Font.PLAIN);
//判斷斜體復選框按鈕是否被選中
intItalic = (ckbItalic.isSelected() ? Font.ITALIC : Font.PLAIN);
//設置字體
textDemo.setFont(new Font("Serif", intBold + intItalic, 12));
}//判斷是否單擊了單選按鈕
if(e.getSource() instanceof JRadioButton){
if(rdbBlack.isSelected()){//判斷黑色單選按鈕是否為選中狀態
textDemo.setForeground(Color.black);//設置字體顏色
}
if(rdbRed.isSelected()){
textDemo.setForeground(Color.red);
}
if(rdbGreen.isSelected()){
textDemo.setForeground(Color.green);
}
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -