湖北汽车工业学院JAVA程序设计 实验三 Java的GUI编程 实验指导书

合集下载

java gui实训课程设计

java gui实训课程设计

java gui实训课程设计Java GUI实训课程设计引言:随着计算机技术的不断发展,图形用户界面(Graphical User Interface,GUI)已经成为了现代软件开发的重要组成部分之一。

Java作为一种广泛应用于软件开发领域的编程语言,也提供了强大的GUI库,使得开发者能够轻松地创建交互性强、界面美观的应用程序。

因此,Java GUI实训课程设计对于学生们来说具有重要的意义。

一、课程设计背景与目标Java GUI实训课程设计旨在通过实践操作,让学生们掌握Java GUI 开发的基本理论与应用技巧。

通过该课程的学习,学生们将能够独立完成一个基于Java GUI的应用程序的设计与开发,提高他们的软件开发能力和创新思维。

二、课程设计内容1. Java GUI基础知识在课程的开始阶段,学生们将系统地学习Java GUI的基本概念和原理,包括Swing组件、布局管理器、事件监听器等内容。

通过理论学习和实践操作,学生们将掌握Java GUI的基本框架和开发流程。

2. 实践项目选题在学习了Java GUI的基础知识之后,学生们将根据自己的兴趣和实际需求,选择一个适合的实践项目进行设计与开发。

项目的选题可以涉及各个领域,例如学生信息管理系统、音乐播放器、游戏界面等等。

通过实践项目的设计与开发,学生们能够将所学知识应用于实际,提升他们的综合能力。

3. 项目需求分析与设计在开始实际编码之前,学生们需要进行项目需求分析与设计。

他们需要与团队成员合作,明确项目的功能需求和界面设计,并编写相应的需求文档和设计文档。

这一阶段的工作能够帮助学生们更好地理解项目的需求,为后续的编码工作奠定基础。

4. 项目编码与测试在完成项目的需求分析与设计之后,学生们将进入项目的编码与测试阶段。

他们需要根据需求文档和设计文档编写Java代码,并进行相应的单元测试和集成测试。

通过这一阶段的工作,学生们将加深对Java GUI的理解,并掌握常用的调试技巧。

JAVA-SWING图形界面程序设计实验报告(附完整代码)

JAVA-SWING图形界面程序设计实验报告(附完整代码)

图形界面(GUI)程序设计一、课题内容和要求内容:设计和编写一个用于将人民币转换为等值的美元的程序,界面要求可以输入人民币的金额并可以得到转换后的结果。

要求:学习和理解JAVA SWING中的容器,部件,布局管理器和部件事件处理方法。

通过编写和调试程序,掌握JAVA图形界面程序设计的基本方法。

二、设计思路分析class RMBtoDollar:主类,调用主函数。

class change:设置界面,并通过界面上的事件触发实现汇率转换。

三、概要设计public class RMBtoDollar{public static void main(String[] args);}class change extends JFrame implements MouseListener { JLabel l1, l2,l3;JTextField tf1, tf2;JButton b;double RMB, Dollar;public change();public void mousePressed(MouseEvent e);public void mouseClicked(MouseEvent e);public void mouseEntered(MouseEvent e);public void mouseExited(MouseEvent e);public void mouseReleaseed(MouseEvent e);//鼠标释放时进行转换}四、详细设计import java.awt.*;import java.awt.event.*;import javax.swing.*;public class RMBtoDollar {public static void main(String[] args) {new change();}}class change extends JFrame implements MouseListener { JLabel l1, l2,l3;JTextField tf1, tf2;JButton b;double RMB, Dollar;public change() {//添加组件和设置布局l1 = new JLabel("人民币/元:");l2 = new JLabel("美元/dollar:");l3=new JLabel("(汇率:6.17)");tf1 = new JTextField(12);tf2 = new JTextField(12);b = new JButton("转换");add(l1);add(tf1);add(l2);add(tf2);add(l3);add(b);setLayout(new FlowLayout(FlowLayout.CENTER));setTitle("人民币转换为美元");setBounds(300, 300, 300, 150);setVisible(true);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);b.addMouseListener(this);//鼠标事件监视器}public void mousePressed(MouseEvent e) {if (tf2.getText() != null) {// tf2 test 默认初始设为空tf2.setText("");}}public void mouseClicked(MouseEvent e) {}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}public void mouseReleased(MouseEvent e) {if (tf1.getText() != null) {// 检查tf1 test 是否为空try {// 取异常RMB = Double.parseDouble(tf1.getText());// 字符转为double型Dollar = RMB / 6.17;//转换tf2.setText("" + Dollar);// 显示} catch (Exception ex) {tf1.setText("");// 如果输入不是数字,设为空}}}}五、测试数据及其结果分析1正常输入:2输入字符串不能转为double型时清空输入框:3结果:输出正常。

Java程序设计实验指导书(答案)

Java程序设计实验指导书(答案)

第Ⅰ部分:实验指导实验1:Java开发环境J2SE一、实验目的(1)学习从网络上下载并安装J2SE开发工具。

(2)学习编写简单的Java Application程序.(3)了解Java源代码、字节码文件,掌握Java程序的编辑、编译和运行过程。

二、实验任务从网络上下载或从CD-ROM直接安装J2SE开发工具,编写简单的Java Application程序,编译并运行这个程序。

三、实验内容1.安装J2SE开发工具Sun公司为所有的java程序员提供了一套免费的java开发和运行环境,取名为Java 2 SDK,可以从上进行下载。

安装的时候可以选择安装到任意的硬盘驱动器上,例如安装到C:\j2sdk1.4.1_03目录下。

教师通过大屏幕演示J2SE的安装过程,以及在Windows98/2000/2003下环境变量的设置方法。

2.安装J2SE源代码编辑工具Edit Plus教师通过大屏幕演示Edit Plus的安装过程,以及在Windows98/2000/2003操作系统环境下编辑Java 原程序的常用命令的用法。

3.编写并编译、运行一个Java Application程序。

创建一个名为HelloWorldApp的java Application程序,在屏幕上简单的显示一句话"老师,你好!"。

public class HelloWorldApp{public static void main(String[] args){System.out.println("老师,你好!");}}4.编译并运行下面的Java Application程序,写出运行结果。

1:public class MyClass {2:private int day;3:private int month;4:private int year;5:public MyClass() {6:day = 1;7:month = 1;8:year = 1900;9:}10:public MyClass(int d,int m,int y) {11:day = d;12:month = m;13:year = y;14:}15:public void display(){16:System.out.println(day + "-" + month + "-" + year);17:}18:public static void main(String args[ ]) {19:MyClass m1 = new MyClass();20:MyClass m2 = new MyClass(25,12,2001);21:m1.display();22:m2.display();23:}24:}运行结果:1-1-190025-12-2001实验2:Java基本数据类型一、实验目的(1)掌握javadoc文档化工具的使用方法。

Java GUI 简单控件实验报告

Java GUI 简单控件实验报告

一、实验目的1.掌握JA V A swing包的使用。

2.掌握JA V A swing 包中类的运用。

3. 运用JA V A swing 包完成一个简单的控件内容读。

二、实验内容1.采用较为灵活和复杂的网格包布局的方式,实现简单登陆的功能。

三、设计与实现过程import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JOptionPane;import javax.swing.JPasswordField;import javax.swing.JTextField;public class dialog implements ActionListener{private JTextField textField;private JPasswordField passwordField;private JFrame frame;private JLabel[] label;private JButton[] button;private Container con;private String username, password;private String[] binfor = {"登录:","退出:"};public void login(){String[] linfor = {"账号:","密码:"};frame = new JFrame("登录");frame.setSize(300, 180);frame.setLocation(460,260);frame.setResizable(false);con = frame.getContentPane();con.setLayout(null);textField = new JTextField();passwordField = new JPasswordField();textField.setSize(200,470/15);textField.setLocation(770/15,5);con.add(textField);passwordField.setSize(200, 470/15);passwordField.setLocation(770/15, 5 + (670/15));con.add(passwordField);button = new JButton[2];label = new JLabel[2];for(int i = 0; i < 2; i++){label[i] = new JLabel(linfor[i]);label[i].setLocation(5, 3 + (i * 670/15));label[i].setSize(570/15, 670/15);con.add(label[i]);button[i] = new JButton(binfor[i]);button[i].setLocation(440/15 + (i * 2000/15),1600/15);button[i].setSize(1570/15,370/15);button[i].addActionListener(this);con.add(button[i]);}frame.setVisible(true);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}public void actionPerformed(ActionEvent event) {if(event.getSource() == button[0]){username = textField.getText();password = passwordField.getText();System.out.println("输入的账号为" + username + '\n' + "输入的密码为" + password);}}}}四、设计技巧及体会:本次试验主要是学习JA V A语言中GUI的内容,懂得了如何用JA V A语言编写窗口界面,学会了swing中JFrame,类。

高级java实验报告GUI设计

高级java实验报告GUI设计
{
return new Dimension(200,30);
}
public synchronized void addActionListener(ActionListener listener)
{
if(actionListenerList == null)
{
actionListenerList = new ArrayList<ActionListener>(2);
import java.util.ArrayList;
import javax.swing.JPanel;
public class MessagePanelWithActionListener extends JPanel implements MouseListener
{
private String message = "Welcome to Java";
// TODO Auto-generated method stub
processEvent(new ActionEvent(this,ActionEvent.ACTION_PERFORMED,null));
}
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
选择颜色,使用该颜色设置颜色标签,反映颜色变化。
(3)对CircleController进行修改,在颜色控制按钮的事件
处理中,使用控制器得到的用户颜色,修改对应的CircleModel对
象的颜色属性设置。
(4)运行程序,启动用户测试程序MVCDemo.java(程序清单

Java语言程序设计课程设计实训项目——应用Java Swing GUI组件技术实现课程选课系统GUI窗口(第1部分)

Java语言程序设计课程设计实训项目——应用Java Swing GUI组件技术实现课程选课系统GUI窗口(第1部分)
将出现窗口界面的创建结果。 2、在主窗口内添加 5 个功能按钮 (1)添加 JButton 组件
杨教授工作室,版权所有,盗版必究, 1/19 页
杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料
(2)重复添加 5 个 JButton 组件
杨教授工作室,版权所有,盗版必究, 2/19 页
杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料
oneStudentManage.systemRegister(); } 6、测试主窗口内的“退出系统”按钮的正确性
点击“退出系统”按钮后,将关闭主窗口,同时退出本系统程序。 1.1.2 课程选课系统注册窗口的 UI 实现 1、打开 Form 设计器
(1)设置包名称为 com.px1987.course.ui,类名称为 StudentRegisterWindow,并选择 JFrame 模板
杨教授工作室,版权所有,盗版必究, 7/19 页
杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料
(2)点击“Finish”完成按钮,最后将产生出下面的窗口类及代码
2、设置窗口的主要属性 (1)设置窗口的标题文字为:蓝梦选课系统注册窗口。
杨教授工作室,版权所有,盗版必究, 8/19 页
杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料
杨教授工作室,版权所有,盗版必究, 13/19 页
杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料
(3)改变按钮的对象名称为 loginNameButton (4)为该确认按钮添加鼠标点击事件
杨教授工作室,版权所有,盗版必究, 14/19 页
杨教授工作室 精心创作的优秀程序员 职业提升必读系列资料
private void cancelLoginButtonActionPerformed(java.awt.event.ActionEvent evt) {

实验三图形用户界面设计(汽院含答案解析)

实验三图形⽤户界⾯设计(汽院含答案解析)实验三图形⽤户界⾯设计实验⽬的1.掌握Java语⾔中GUI编程的基本⽅法2.掌握Java语⾔中AWT组件的基本⽤法3.掌握Java语⾔中Swing组件的基本⽤法实验导读1.通过图形⽤户界⾯(GUI:Graphics User Interface),⽤户和程序之间可以⽅便地进⾏交互。

AWT(Abstract Windowing Toolkit),中⽂译为抽象窗⼝⼯具包,是Java提供的⽤来建⽴和设置Java的图形⽤户界⾯的基本⼯具。

AWT由Java中的java.awt包提供,⾥⾯包含了许多可⽤来建⽴与平台⽆关的图形⽤户界⾯(GUI)的类,这些类⼜被称为组件(components)。

Swing是⼀个⽤于开发Java应⽤程序⽤户界⾯的开发⼯具包。

它以抽象窗⼝⼯具包(AWT)为基础使跨平台应⽤程序可以使⽤任何可插拔的外观风格。

Swing开发⼈员只⽤很少的代码就可以利⽤Swing丰富、灵活的功能和模块化组件来创建优雅的⽤户界⾯。

JDK写程序所有功能都是靠虚拟机去操作本地操作系统。

⽐如window下,就是JDK ⽤windows API实现功能。

⽽awt包中很多组件是组件⾃⾝去调⽤本地操作系统代码swing包中的组件采⽤的是调⽤本地虚拟机⽅法,由虚拟机再调⽤本地操作系统代码。

意思就是中间多了⼀层,这样就加强了swing包的移植性,与本地关系不那强了。

图3.1 AWT常⽤组件继承关系图Container为容器,是⼀个特殊的组件,该组件中可以通过add⽅法添加其他组件进来。

2.布局,容器中的组件的排放⽅式。

常见的布局管理器:FlowLayout(流式布局管理器):从左到右的顺序排列。

Panel默认的布局管理器。

BorderLayout(边界布局管理器):东,南,西,北,中。

Frame默认的布局管理器。

GridLayout(⽹格布局管理器):规则的矩阵CardLayout(卡⽚布局管理器):选项卡GridBagLayout(⽹格包布局管理器):⾮规则的矩阵3.类JFrame是java.awt.Frame 的扩展版本,该版本添加了对JFC/Swing 组件架构的⽀持,常⽤⽅法如下:1)JFrame() 该构造⽅法可以创建⼀个⽆标题的窗⼝,窗⼝的默认布局为BorderLayout布局。

《Java程序设计》实验报告 --实验3

}
else if(e.getSource()==buttontwo){//按键2操作
tf.setText(tf.getText()+"2");
flag1=Double.parseDouble(tf.getText());
}
else if(e.getSource()==buttonthree){//按键3操作
buttondevision=new JButton("/");
buttonsin=new JButton("sin");
buttontozero=new JButton(">0");
paneleast.setLayout(new GridLayout(3,1));//设置西边的布局为3行1列
//将操作按钮"+""-""*""/""sin"">0"添加到西边的面板中
JButton buttonplus,buttonminus,buttonmultiple,buttondevision,
buttonsin,buttontozero;//新建按钮"+""-""*""/""sin"和归零按钮
JButton buttonone,buttontwo,buttonthree,buttonfour,buttonfive,buttonsix,
panelcenter.add(buttonthree);
panelcenter.add(buttonfour);
panelcenter.add(buttonfive);

java Swing实验报告

《Java程序设计-实验报告》
计算机科学系级班
课程名:《Java程序设计》
姓名:
学号:
指导教师:
实验项目:“Java GUI程序设计”
实验目的:
1、熟悉和掌握java Swing的基本GUI程序设计,掌握如何构建一个窗口程序,并且窗口中添加常用的Swing组件,使用各种布局管理器来完成对窗口中的组件进行布局。

2、了解Java事件处理机制,掌握基本的事件处理机制的基本程序编写。

实验要求:
使用java语言完成相关程序设计要求,编写代码、调试、运行,将编写的程序写在题目要求后面,对结果进行分析、得出编程的结论和心得。

实验内容:(两个题目,二选一)
1、试着用Swing类库完成以下程序界面(自行截图,尽量与下面界面接近):
2、试着用Swing类库完成以下程序界面(自行截图,尽量与下面界面接近):
提交要求:独立完成以上各个程序,查询相关资料和文档完成以上程序设计,将最后做完的界面截图,摘抄部分关键程序语句,写出碰到的问题,如何接近,心得总结等,17周之内提交打印文档。

Java(A)实验指导(3)

实验3:GUI编程一、实验目的1.掌握Java图形组件和布局管理器的使用2.理解和掌握Java事件处理机制的使用。

3.掌握图形界面的各种常用控件的使用。

4.掌握常用对话框的使用。

二、实验要求本次实验要求以Eclipse为开发平台。

三、实验内容与步骤1.编写一个Java Application程序,该程序的运行结果如下所示。

2.编写一个Java Application程序,用GridLayout布局方式放置4个按钮,按钮背景为红、绿、蓝、黄色。

该程序的运行结果如下所示。

3.编写一个Java Application程序,该程序的运行结果如下所示。

4. 编写程序,要求显示一个 300×100 像素的窗口,窗口中包含两个按钮和一个标签。

当点击第一个按钮时,窗口标签中显示”button1 is pressed”;当点击第二个按钮时,退出应用程序。

如下图所示。

5.设计一个简单计算器,如下图所示。

在“操作数:”标签右侧的两个文本框输入操作数,当单击操作符+,-,*,/按钮时,对两个操作数进行运算并将结果填入到“结果:”标签右侧的文本框中。

该程序模板已给出,请在要求位置补充若干代码,以完成程序要求的功能。

6.下面的程序是在顶层容器JFrame中创建一个表格,并在表格中显示两行内容。

请将程序补充完整并上机运行。

import javax.swing.*;import java.awt.*;import java.awt.event.*;public class jtable{public jtable(){JFrame f=new JFrame();Object[][] playerInfo={{"张华",new Integer(66),new Integer(32),new Integer(98),newBoolean(false)},{"阿宝",new Integer(82),new Integer(69),new Integer(151),newBoolean(true)},};String[] Names={"姓名","语文","数学","总分","及格"};//利用构造方法JTable(Object data[][], Object columnName[])创建表格对象JTable table=new JTable( (1) );JScrollPane scrollPane=new JScrollPane( (2) );//表格使用滚动面板f.getContentPane().add( (3) ); //加到容器中f.setTitle("Simple Table");f.setBounds(100, 100, 400, 200);f.setVisible(true);f.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {System.exit(0);}});}public static void main(String[] args){jtable b=new (4) ;}}7.编写一个算术测试小软件,用来训练小学生的算术能力。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验三 Java的GUI编程(一)开发文字字体设计窗体【实验目的】(1)了解GUI的概念;(2)了解java.awt包和javax.swing包,并比较它们具有的同性质的组件的异同;(3)掌握和运用Java的基本GUI组件,了解他们的特点。

【实验任务】要求设计一个文字字体设计窗体,在该窗体中可以设置要显示文字的字体内容,包括字体名称、字体大小、粗体和斜体等字体风格。

并模拟在不同操作系统下的显示效果。

【实验内容】阅读并分析以下程序,将程序中的代码补充完整,编译并运行程序,查看结果。

//ArtFont.javaimport javax.swing.*;import java.awt.*;import java.awt.event.*;public class ArtFont extends JFrame implementsActionListener,ItemListener{JComboBox fontType,fontSize;JCheckBox boldBx;//粗体按钮JCheckBox italicBx;//斜体按钮JButton colorBtn;//颜色按钮;String[] fontNames;//字体名称;String[] fontSizes;//字体尺寸;JLabel label;//输入提示标签;JTextField inputText;//文字输入框;JTextArea txtArea;//文字显示区;JPanel fontPanel;//字体设置;JPanel showPanel;//显示效果区Font font;int boldStyle,italicStyle,underlineStyle;int fontSizeStyle;String fontNameStyle;Color colorStyle=Color.black;//设置字体的默认颜色为黑色;String[] style = { "默认显示效果", "Windows显示效果", "Unix显示效果" };JComboBox styleBtn;public ArtFont() {super("字体设置");//设置默认字体boldStyle=0;italicStyle=0;underlineStyle=0;fontSizeStyle=10;fontNameStyle="宋体";font=new Font(fontNameStyle,boldStyle+italicStyle,fontSizeStyle);fontPanel=new JPanel();fontPanel.setLayout(new FlowLayout());//设置字体名字GraphicsEnvironmentge=GraphicsEnvironment.getLocalGraphicsEnvironment();fontNames=ge.getAvailableFontFamilyNames();//获得系统中所有字体的名字;fontType=new JComboBox(fontNames);fontType.setEditable(false);fontType.setMaximumRowCount(10);fontType.addItemListener(new ItemListener(){public void itemStateChanged(ItemEvent e){//实现监听字体名字改变的事件String item=(String) e.getItem();System.out.println(item);fontNameStyle= item;font=newFont(fontNameStyle,boldStyle+italicStyle,fontSizeStyle);txtArea. 代码1 ; //设置显示区字体}});//设置字体大小fontSizes=new String[63];for(int i=0;i<63;i++){fontSizes[i]=Integer.toString((i+10));}fontSize=new JComboBox(fontSizes);fontSize.setEditable(false);fontSize.setMaximumRowCount(10); // 设置 JComboBox 显示的最大行数。

fontSize.addItemListener(new ItemListener(){public void itemStateChanged(ItemEvent e){//实现监听字体大小改变的方法String size=(String)e.getItem();fontSizeStyle=Integer.parseInt(size);font=newFont(fontNameStyle,boldStyle+italicStyle,fontSizeStyle);txtArea.setFont(font);}});//设置粗体选择按钮;boldBx=new JCheckBox("粗体");boldBx.addItemListener(new ItemListener(){public void itemStateChanged(ItemEvent e){//实现监听选择粗体状态改变的方法if(e.getSource()==boldBx&&e.getStateChange()==e.SELECTED){ boldStyle= 代码2 ; //设置字体为粗体font=new Font(fontNameStyle,boldStyle+italicStyle,fontSizeStyle);txtArea.setFont(font);}}});//设置斜体选择按钮;italicBx=new JCheckBox("斜体");italicBx.addItemListener(new ItemListener(){public void itemStateChanged(ItemEvent e){//实现监听选择斜体状态改变的方法if(e.getSource()==italicBx&&e.getStateChange()==e.SELECTED){ italicStyle= 代码3 ; //设置字体为斜体font=new Font(fontNameStyle,boldStyle+italicStyle,fontSizeStyle);txtArea.setFont(font);}}});//设置颜色选择;colorBtn=new JButton("颜色");colorBtn.addActionListener(this);//设置字体面板;fontPanel.add(fontType);fontPanel.add(fontSize);fontPanel.add(boldBx);fontPanel.add(italicBx);fontPanel.add(colorBtn);//设置输入提示标签label=new JLabel("输入");//设置文本输入框;inputText=new JTextField(30);inputText.addActionListener(this);//设置文本显示区;txtArea=new JTextArea(10,80);//20行80列;txtArea.setFont(font);//设置窗口的样式;styleBtn=new JComboBox(style);styleBtn.addItemListener(this);//设置文本面板;showPanel=new JPanel();showPanel.add(label);showPanel.add(inputText);showPanel.setLayout(new FlowLayout());showPanel.add(new JScrollPane(txtArea));showPanel.add(styleBtn);//设置容器;Container container=getContentPane();container.setLayout(new BorderLayout());container.add(fontPanel,BorderLayout.NORTH);container.add(showPanel,BorderLayout.CENTER);setSize(500,300);setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==colorBtn){//改变颜色colorStyle=JColorChooser.showDialog(this,"选择字体颜色",colorStyle);colorBtn.setForeground(colorStyle);txtArea.setForeground(colorStyle);}else if(e.getSource()==inputText){//将输入文字在文字显示区表示;txtArea.setText(inputText.getText());}}public void itemStateChanged(ItemEvent e) {String s = (String) e.getItem();String className = "";if (s.equals("Windows显示效果"))className ="com.sun.java.swing.plaf.windows.WindowsLookAndFeel";else if (s.equals("Unix显示效果"))className ="com.sun.java.swing.plaf.motif.MotifLookAndFeel";else if (s.equals("默认显示效果"))className =UIManager.getCrossPlatformLookAndFeelClassName();try {UIManager.setLookAndFeel(className);SwingUtilities.updateComponentTreeUI(this);} catch (Exception de) {System.out.println("Exception happened!");}}public static void main(String args[]){代码4 ;artFont.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);}}思考:(1)如果将颜色按钮c olorBtn的事件监听者改为一个为ActionListener匿名对象,即将程序中的语句colorBtn.addActionListener(this)改成如下形式:colorBtn.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){if(e.getSource()==colorBtn){//改变颜色colorStyle=JColorChooser.showDialog(this, "选择字体颜色",colorStyle);//this 换成colorBtncolorBtn.setForeground(colorStyle);txtArea.setForeground(colorStyle);}}});程序可否编译正常?运行正常吗?如果不能,是什么原因?(2)如果将程序ArtFont.java中所有的匿名监听者改为this,那么程序主要会做什么变动?(3)程序运行结果是java的默认显示效果,如果希望用户能控制界面的显示效果,呈现出具有UNIX操作系统的显示外观和Window操作系统的默认显示效果,该如何修改程序?(二)布局与日历【实验目的】学习使用布局类。

相关文档
最新文档