java实现仿windows 字体设置选项卡实例

本篇文章介绍了java仿windows 字体设置选项卡,可实现类似windows字体设置效果,需要的朋友可以参考下。

想用java做一个像windows里一样的txt编辑软件,涉及到字体设置选项卡,在网上找了很久都没找到,就生气啦自己写一个,现在贴这里分享一下,下次再遇到这样的问题就不用自己亲自打代码啦!

 package 实验; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.*; import javax.swing.border.BevelBorder; /** * 字体格式设置对话框 */ public class FontFormat extends JDialog { private JLabel nameLb; private JLabel styleLb; private JLabel sizeLb; private JLabel presLb; private JTextField nameTx; private JTextField styleTx; private JTextField sizeTx; private JTextField presTx; private JList nameLt; private JList styleLt; private JList sizeLt; private JScrollPane jScrollPane1; private JScrollPane jScrollPane2; private JScrollPane jScrollPane3; private JButton approve; private JButton cancel; private JButton chose; private JRadioButton[] language = new JRadioButton[2]; private ButtonGroup languageg; private String Slanguage[] = { new String("李涛"), new String("ABC") }; private static JFrame frame; public Font font, newFont;// 字体类 private Color color;// 颜色类 Color newColor; private JFileChooser fileChoose = new JFileChooser();// 文件选择类实例 private JDialog colorDlg;// 颜色对话框 private JColorChooser colorChoose = new JColorChooser();// 颜色选择类实例 private GraphicsEnvironment environment; // 该类中又获取系统字体的方法; private String[] fontNameSet;// 字体‘逻辑名'集 // 字体‘样式'集的字符串数组 private String[] fontStyleSet = { "常规", "倾斜", "加粗", "倾斜 加粗" }; // 字体‘样式'集的常量数组 private Integer[] fontCon = { Font.PLAIN, Font.ITALIC, Font.BOLD, Font.BOLD | Font.ITALIC }; // 字体‘大小'集 private String[] fontSizeSet = { "6", "7", "8", "9", "10", "11", "12", "14", "16", "18", "20", "22", "24", "26", "28", "36", "48", "72" }; public static void main(String args[]) {// 主函数 FontFormat a = new FontFormat(); a.setVisible(true); } public FontFormat() {// 无参构造函数 super(frame, "李涛―字体设置窗口", true); frame = new JFrame(); initGUI(); } public FontFormat(JFrame frame) {// 含参构造函数 super(frame, "李涛―字体设置窗口", true); this.frame = frame;// 父窗口中必须有一个public的Font对象 // setAlwaysOnTop(true); initGUI(); } private void initGUI() {// 字体格式选择器的界面初始化 try { getContentPane().setLayout(null); environment = GraphicsEnvironment.getLocalGraphicsEnvironment();// GraphicsEnvironment是一个抽象类,不能实例化,只能用其中的静态方法获取一个实例 fontNameSet = environment.getAvailableFontFamilyNames();// 获取系统字体 addMenu();// 加入菜单 initFont();// 初始化字体 // pack(); setSize(380, 337); setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); setWindowPos();// 使窗口屏幕居中 setResizable(false);// 大小不可变 } catch (Exception e) { e.printStackTrace(); } } private void initFont() {// 初始化字体 // 设置默认字体格式为父窗口font对向的字体格式 if (frame.getFont() == null) { nameTx.setText(fontNameSet[0]); styleTx.setText(fontStyleSet[0]); sizeTx.setText("12"); nameLt.setSelectedValue(fontNameSet[0], true); styleLt.setSelectedIndex(0); sizeLt.setSelectedValue("12", true); font = new Font(fontNameSet[0], fontCon[0], 12); newFont = font;// 保存原来的字体格式 presTx.setFont(font); // JOptionPane.showMessageDialog(null, "ccac"); } else { int idxStyle = 0; for (int i = 0; i 以上就是java实现仿windows 字体设置选项卡实例的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Java