📄 fontdialog.java
字号:
//FontDialog.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
public class FontDialog extends JDialog implements ActionListener{
JLabel lFontSet = new JLabel("字体",JLabel.CENTER);
JLabel lSizeSet = new JLabel("字号",JLabel.CENTER);
JLabel lColorSet = new JLabel("颜色",JLabel.CENTER);
JComboBox fontList = this.buildFontList();
JComboBox sizeList = this.buildSizeList();
JButton bColorChoose = new JButton("选择颜色");
JButton bOK = new JButton("确定");
JButton bCancel = new JButton("取消");
Color newColor = Color.BLACK; //初值为默认颜色
String newFontName = "Times New Roman"; //初值为默认字体名称
int newSize = 16; //初值为默认字体大小
public FontDialog(MainFrame superWindow){
super(superWindow,"字体设置",true);
Container c = this.getContentPane();
c.setLayout(new GridLayout(4,2,5,5));
c.add(lFontSet);
c.add(fontList);
c.add(lSizeSet);
c.add(sizeList);
c.add(lColorSet);
c.add(bColorChoose);
c.add(bOK);
c.add(bCancel);
this.setLocation(300,300);
this.setSize(260,180);
bColorChoose.addActionListener(this);
bOK.addActionListener(this);
bCancel.addActionListener(this);
}
public void actionPerformed(ActionEvent e){
Object evtSrc = e.getSource();
if(evtSrc == bColorChoose){
newColor = JColorChooser.showDialog(this,"选择字体颜色",Color.BLACK);
}
//点击确定按钮,则设置新的字体
if(evtSrc == bOK){
newFontName = (String)fontList.getSelectedItem();
newSize = Integer.parseInt((String)sizeList.getSelectedItem());
this.dispose();
}
if(evtSrc == bCancel){
//取消时还原成初值
newColor = Color.BLACK;
newFontName = "Times New Roman";
newSize = 16;
this.dispose();
}
}
public String getNewFontName(){
return newFontName;
}
public int getNewSize(){
return newSize;
}
public Color getNewColor(){
return newColor;
}
JComboBox buildFontList(){
JComboBox fontList;
Vector v = new Vector();
v.addElement("楷体");
v.addElement("宋体");
v.addElement("黑体");
v.addElement("幼圆");
v.addElement("隶书");
v.addElement("华文新魏");
v.addElement("Arial");
v.addElement("Times New Roman");
v.addElement("Verdana");
v.addElement("Comic Sans MS");
v.addElement("Tahoma");
fontList = new JComboBox(v);
String[] fontNames = GraphicsEnvironment.getLocalGraphicsEnvironment().getAvailableFontFamilyNames();
fontList = new JComboBox(fontNames);
return fontList;
}
JComboBox buildSizeList(){
JComboBox sizeList;
String[] sizeValues = new String[30];
for(int i=0;i<sizeValues.length;i++){
sizeValues[i] = Integer.toString(8 + i*2);
}
sizeList = new JComboBox(sizeValues);
return sizeList;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -