?? fontsetdemo.java
字號:
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
public class FontSetDemo extends JFrame implements ActionListener,ItemListener
{
JPanel pnlMain;
JLabel lblSize,lblType,lblTest;
JRadioButton rbtnRed,rbtnGreen;
JCheckBox chkBold,chkItalic;
JButton btnExit;
ButtonGroup grpColor;
List lstSize;
JComboBox cmbType;
String []strType={"宋體","隸書","楷體_GB2312","仿宋_GB2312"};
public FontSetDemo()
{
super("字體設置器");
lblType=new JLabel("請選擇字體");
lblSize=new JLabel("請選擇字形");
lstSize=new List();
lstSize.addItemListener(this);
for(int i=10;i<30;i+=2)
lstSize.add(String.valueOf(i));
lstSize.select(0);
cmbType=new JComboBox(strType);
cmbType.addItemListener(this);
cmbType.setSelectedIndex(0);
grpColor=new ButtonGroup();
rbtnRed=new JRadioButton("紅色");
grpColor.add(rbtnRed);
//rbtnRed.setSelected(true);
rbtnRed.addItemListener(this);
rbtnGreen=new JRadioButton("綠色");
grpColor.add(rbtnGreen);
rbtnGreen.addItemListener(this);
chkBold=new JCheckBox("加粗");
chkBold.addItemListener(this);
chkItalic=new JCheckBox("傾斜");
chkItalic.addItemListener(this);
lblTest=new JLabel("這是字體設置的測試文字");
lblTest.setBorder(BorderFactory.createBevelBorder(1));
btnExit=new JButton("退出");
btnExit.addActionListener(this);
pnlMain=new JPanel(null);
lblType.setBounds(5,0,80,30);
cmbType.setBounds(5,30,80,30);
lblSize.setBounds(100,0,80,30);
lstSize.setBounds(100,30,80,60);
rbtnRed.setBounds(185,5,60,30);
rbtnGreen.setBounds(245,5,60,30);
chkBold.setBounds(185,35,60,30);
chkItalic.setBounds(245,35,60,30);
lblTest.setBounds(10,100,270,60);
btnExit.setBounds(190,70,80,30);
pnlMain.add(lblType);
pnlMain.add(cmbType);
pnlMain.add(lblSize);
pnlMain.add(lstSize);
pnlMain.add(rbtnRed);
pnlMain.add(rbtnGreen);
pnlMain.add(chkBold);
pnlMain.add(chkItalic);
pnlMain.add(lblTest);
pnlMain.add(btnExit);
this.setContentPane(pnlMain);
setSize(300,200);
setVisible(true);
}
public void actionPerformed(ActionEvent evt)
{
if(evt.getSource()==btnExit)
System.exit(0);
}
public void itemStateChanged(ItemEvent evt)
{ JOptionPane jOp=new JOptionPane();
if(evt.getSource()==rbtnRed)
lblTest.setForeground(Color.red);
if(evt.getSource()==rbtnGreen)
lblTest.setForeground(Color.green);
int intBold=(chkBold.isSelected()?Font.BOLD:Font.PLAIN);
int intItalic=(chkItalic.isSelected()?Font.ITALIC:Font.PLAIN);
int intSize=Integer.parseInt((String)lstSize.getSelectedItem());
String strType=(String)cmbType.getSelectedItem();
lblTest.setFont(new Font(strType,intBold+intItalic,intSize));
if(rbtnRed.isSelected())
jOp.showConfirmDialog(null,"請選擇一個","選擇",JOptionPane.OK_CANCEL_OPTION);
}
public static void main(String args[])
{
new FontSetDemo();
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -