《窗体与对话框的练习——Java第十三周》
2012-11-27 21:01
260 查看
/* (程序头部注释开始)
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 《窗体与对话框的练习——Java第十三周》
* 作 者: 刘江波
* 完成日期: 2012 年 11 月 24 日
* 版 本 号: v2.2
* 对任务及求解方法的描述部分
* 问题描述:
编写一个FontFamily类,该类对象获取当前机器可用的全部字体名称。编写一个对话框FontDialog,该对话框是模式对话框,采用BorderLayout布局,包含一个JComboBox放在北面显示全部字体的名称,包含一个JLabel放在中间,显示字体的效果,包含两个按钮放在南面,点击YES,在对话框所依赖的窗口中设置字体的效果,点击Cancle取消。编写一个窗口FrameHaveDialog,该窗口有一个按钮和一个文本区,当单击该按钮时,弹出对话框FontDialog,然后根据用户在对话框下拉列表中选择的为显示文本区中的文本。最后编写一个程序执行入口进行测试。如下图所示。
* 程序头部的注释结束
*/
FontFamily类
FrameHaveDialog类
FontDialog类
* 程序的版权和版本声明部分
* Copyright (c) 2011, 烟台大学计算机学院学生
* All rights reserved.
* 文件名称: 《窗体与对话框的练习——Java第十三周》
* 作 者: 刘江波
* 完成日期: 2012 年 11 月 24 日
* 版 本 号: v2.2
* 对任务及求解方法的描述部分
* 问题描述:
编写一个FontFamily类,该类对象获取当前机器可用的全部字体名称。编写一个对话框FontDialog,该对话框是模式对话框,采用BorderLayout布局,包含一个JComboBox放在北面显示全部字体的名称,包含一个JLabel放在中间,显示字体的效果,包含两个按钮放在南面,点击YES,在对话框所依赖的窗口中设置字体的效果,点击Cancle取消。编写一个窗口FrameHaveDialog,该窗口有一个按钮和一个文本区,当单击该按钮时,弹出对话框FontDialog,然后根据用户在对话框下拉列表中选择的为显示文本区中的文本。最后编写一个程序执行入口进行测试。如下图所示。
* 程序头部的注释结束
*/
FontFamily类
package week13_2; import java.awt.GraphicsEnvironment; public class FontFamily { String[] font; GraphicsEnvironment ge; FontFamily() { ge = GraphicsEnvironment.getLocalGraphicsEnvironment(); font = ge.getAvailableFontFamilyNames(); } public String[] getFont() { return font; } }
FrameHaveDialog类
package week13_2; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class FrameHaveDialog extends JFrame implements ActionListener { JButton bt; JTextArea ta; JPanel panel; FontDialog fontd; FrameHaveDialog() { fontd=new FontDialog(); bt = new JButton("设置字体"); bt.addActionListener(this); ta = new JTextArea("Java窗体练习。。。。"); panel = new JPanel(new FlowLayout()); panel.add(bt); this.setLayout(new BorderLayout()); //BorderLayout是Window型容器默认的布局; this.add(panel,BorderLayout.NORTH); //this.add(bt,BorderLayout.NORTH); this.add(ta); panel.setFont(new Font("宋体",Font.PLAIN,20)); ta.setFont(new Font("宋体",Font.PLAIN,20)); this.setTitle("字体设置窗口"); this.setBounds(600, 180, 500, 400); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } @Override public void actionPerformed(ActionEvent e) { if(e.getSource() == bt){ Font f = new Font(fontd.getStyle(),Font.PLAIN,20); ta.setFont(f); //ta.setText("设置成功了!"); } } }
FontDialog类
package week13_2; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class FontDialog extends JDialog implements ItemListener,ActionListener{ FontFamily ff; JComboBox jb; String name; String []name1; JLabel lb; JButton bt1,bt2; JPanel panel; public String getStyle(){ return name; } FontDialog(){ ff = new FontFamily(); jb = new JComboBox(); name1 = ff.getFont(); for(int i=0; i<name1.length; i++){ jb.addItem(name1[i]); } jb.addItemListener(this); lb = new JLabel("字体效果显示"); bt1 = new JButton("YES"); bt1.addActionListener(this); bt2 = new JButton("NO"); bt2.addActionListener(this); panel = new JPanel(new FlowLayout()); this.setLayout(new BorderLayout()); this.add(jb,BorderLayout.NORTH); this.add(lb,BorderLayout.CENTER); // this.add(bt1,BorderLayout.SOUTH); // this.add(bt2,BorderLayout.SOUTH); panel.add(bt1); panel.add(bt2); this.add(panel,BorderLayout.SOUTH); // this.add(bt1); // this.add(bt2); this.setBounds(80, 180, 500, 400); this.setVisible(true); //this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setTitle("字体设置选择对话框"); } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub if(e.getSource() == bt1){ lb.setFont(new Font(name,Font.PLAIN,20)); } if(e.getSource() == bt2){ Font f = new Font(null); lb.setFont(f); lb.setText("字体效果显示"); } } @Override public void itemStateChanged(ItemEvent e) { // TODO Auto-generated method stub if(e.getSource() == jb){ name = (String)jb.getSelectedItem(); } } }
相关文章推荐
- Selenium_WebDriver登录模拟鼠标移动切换窗体等操作练习(cssSelector初练手)_Java
- 窗体对话框Java
- JAVA学习中Swing部分JDialog对话框窗体的简单学习
- Java 实训 使用弹出对话框设置主窗体中的文本字体
- 登录对话框(窗体程序)--JAVA基础
- Java-GUI(练习-列出指定目录内容)-(对话框Dialog)
- Java基础--Java---IO流------GUI(布局)、Frame、事件监听机制、窗体事件、Action事件、鼠标事件、对话框Dialog、键盘事件、菜单
- Java基础--Java---IO流------GUI(布局)、Frame、事件监听机制、窗体事件、Action事件、鼠标事件、对话框Dialog、键盘事件、菜单
- Java基础--Java---IO流------GUI(布局)、Frame、事件监听机制、窗体事件、Action事件、鼠标事件、对话框Dialog、键盘事件、菜单
- 练习 窗体和对话框Dialog
- 一个用JAVA编写的洗澡提醒程序,对话框练习,程序员也可以逗女朋友玩
- JAVA__窗口示例代码之布局的练习
- java基础入门----string练习4
- 练习:WinForm 对话框控件(显示、获取)
- Java练习
- JAVA多功能通讯录第十三周
- java IO流练习:文件复制、遍历子目录、复制所有子目录
- 编程练习:N皇后问题 (JAVA)
- 组合框、单选框、按钮、右键快捷菜单以及对话框的练习
- 黑马程序员-JAVA高级视频_IO输入与输出-20天-7(Properties练习)