Java实验--字体设计
来源:互联网 发布:残差网络 编辑:程序博客网 时间:2024/04/30 03:18
编写一个Java程序,实现字体设计窗体,请设计一个字体设计的窗体,使得用户可以根据选择,将字体按照的字体名称,字体大小,粗体和斜体风格进行设置。还可以设置位子文字的颜色,运行结果如下图所示:
源代码:
//FontSet.java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class FontSet extends JFrame{
JPanel headPanel,cenPanel,footPanel;
JComboBox fontstyle,fontsize;
JCheckBox boldface,italic;
JButton fontcolor=new JButton("颜色");
JLabel input=new JLabel("输入");
JTextField info=new JTextField(20);
JTextArea infoout=new JTextArea(6,30);
String fontsty="华文行楷";
int fontsi=20,bf=0,ita=0;
Font f;
Color color=Color.black;
FontSet(){
String fonts[]={"华文行楷","宋体","楷体","华文彩云","黑体","TimesRoman","Courier"};
fontstyle=new JComboBox(fonts);
fontstyle.addItemListener(new fontstyleEvent());
fontsize=new JComboBox();
for(int i=10;i<=70;i+=2)
fontsize.addItem(new Integer(i));
fontsize.addItemListener(new fontsizeEvent());
boldface=new JCheckBox("粗体");
boldface.addItemListener(new boldfaceEvent());
italic=new JCheckBox("斜体");
italic.addItemListener(new italicEvent());
fontcolor.setForeground(Color.RED);
fontcolor.addActionListener(new fontcolorEvent());
info.addActionListener(new infoEvent());
infoout.setEditable(false);
headPanel=new JPanel();
headPanel.add(fontstyle);
headPanel.add(fontsize);
headPanel.add(boldface);
headPanel.add(italic);
headPanel.add(fontcolor);
add(headPanel,BorderLayout.NORTH);
cenPanel=new JPanel();
cenPanel.add(input);
cenPanel.add(info);
add(cenPanel,BorderLayout.CENTER);
footPanel=new JPanel();
JScrollPane js=new JScrollPane(infoout);
footPanel.add(js);
add(footPanel,BorderLayout.SOUTH);
}
class fontstyleEvent implements ItemListener
{
public void itemStateChanged(ItemEvent e){
fontsty=fontstyle.getSelectedItem().toString();
fontChange();
}
}
class fontsizeEvent implements ItemListener
{
public void itemStateChanged(ItemEvent e){
fontsi=new Integer(fontsize.getSelectedItem().toString()).intValue();
fontChange();
}
}
class boldfaceEvent implements ItemListener
{
public void itemStateChanged(ItemEvent e){
if(e.getStateChange()==e.SELECTED)
bf=1;
else
bf=0;
fontChange();
}
}
class italicEvent implements ItemListener
{
public void itemStateChanged(ItemEvent e){
if(e.getStateChange()==e.SELECTED)
ita=1;
else
ita=0;
fontChange();
}
}
class fontcolorEvent implements ActionListener
{
public void actionPerformed(ActionEvent e){
color = JColorChooser.showDialog(FontSet.this,"字体颜色选择",color);
if(color == null )
color = Color.BLACK;
fontChange();
}
}
class infoEvent implements ActionListener
{
public void actionPerformed(ActionEvent e){
infoout.setText(info.getText());
fontChange();
}
}
void fontChange(){
if(bf==1&&ita==1)
f=new Font(fontsty,Font.BOLD+Font.ITALIC,fontsi);
else if(bf==1)
f=new Font(fontsty,Font.BOLD,fontsi);
else if(ita==1)
f=new Font(fontsty,Font.ITALIC,fontsi);
else
f=new Font(fontsty,Font.PLAIN,fontsi);
infoout.setFont(f);
infoout.setForeground(color);
}
public static void main(String[] args) {
FontSet fs=new FontSet();
fs.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
fs.setTitle("字体设置");
fs.setSize(400, 220);
fs.setLocation(300,200);
fs.setResizable(false);
fs.setVisible(true);
}
}
- Java实验--字体设计
- 字体设计
- 第一个JAVA代码——字体设计
- Java字体
- 图形用户界面设计-基本控件 java实验报告第四个
- 南邮JAVA程序设计实验2 小应用程序Applet设计
- JAVA实验七 图形用户界面的设计与实现
- java设计模式 实验一-简单工厂模式
- CreateFont(MFC)字体设计
- logo字体设计心法
- 字体设计结构调整方法
- Android字体设计
- 网页设计常用字体
- 一个字体的设计
- 网页设计的字体
- 前端设计字体大全
- 字体设计:拉丁字母字体书写方法分类
- 数据库设计实验
- NAT
- 开通博客,庆祝一下!
- 对美软件外包快乐并痛着
- vs2005的快捷键大全
- 《Windows用户态程序高效排错》书评汇总
- Java实验--字体设计
- 程序员的生活规律就是“没有规律”
- About install linux ON virtual PC by use of VMware
- 直面程序员的生活
- 一家公司程序员面试题目
- 某高级程序员的几点建议
- 优秀程序员必备七要件
- Java判断时间,Email,手机号是否为正确格式
- 以前做的Jdom的简单总结