Java基础实验报告-图形用户界面设计

合集下载

java图形界面实验报告1

java图形界面实验报告1

河南工业大学实验报告专业班级: 计科F1401 学号: 姓名:实验单元八【实验目的】1.掌握程序设计方法2.掌握程序设计方法3.掌握程序设计方法4.掌握程序设计方法5、掌握使用????程序设计方法。

【实验环境】安装了jdk软件的PC机。

【实验内容】第18章、图形界面。

【程序功能内容说明】设置标签的显示字体、大小背景及颜色。

【实验程序原码】import java.awt.Dimension ;import java.awt.Color ;import java.awt.Font ;import java.awt.Point ;import javax.swing.JLabel ;import javax.swing.JFrame ;public class JLabelDemo02{public static void main(String args[]){JFrame frame = new JFrame("Welcome To MLDN") ;JLabel lab = new JLabel("MLDN",JLabel.CENTER) ; // 实例化标签对象Font fnt = new Font("Serief",Font.ITALIC + Font.BOLD,28) ;lab.setFont(fnt) ;frame.add(lab) ; // 将组件件入到面板之中Dimension dim = new Dimension() ;frame.setBackground(Color.WHITE) ;//设置窗体的背景颜色dim.setSize(200,70) ;frame.setSize(dim) ;Point point = new Point(300,200) ; // 设置坐标frame.setLocation(point) ;frame.setVisible(true) ;}};【实验结果】【该程序关键技术说明】JFrame作为基本容器用于创建窗口。

java实验六-图形用户界面

java实验六-图形用户界面
getContentPane().add(text);
getContentPane().add(text1);
ButtonHandler btnh=newButtonHandler();
text.addActionListener(btnh);
//getContentPane().add(textArea);
text.setBounds(300, 60, 200, 30);
//text.setColumns(31);
getContentPane().add(text);
text1.setEditable(false);
text1.setLineWrap(true);
text1.setBounds(300, 260, 200, 300);
}
}
public class TestJFrame {
public static void main(String[] args) {
new MyFrame();
}
}
2.在JApplet中加入1个文本框,1个文本区,每次在文本框中输入文本,回车后将文本添加到文本区的最后一行。
package实验六;
importjava.awt.event.ActionEvent;
@Override
public void actionPerformed(ActionEvent e) {
// TODO自动生成的方法存根
if (e.getActionCommand()=="按钮1")
label.setText("按钮1:");
else label.setText("按钮2:"); }

java图形用户界面实验报告

java图形用户界面实验报告

java图形用户界面实验报告Java图形用户界面实验报告一、引言图形用户界面(Graphical User Interface,简称GUI)是现代软件开发中不可或缺的一部分。

通过GUI,用户能够直观地与程序进行交互,提高了软件的易用性和用户体验。

本实验旨在通过使用Java编程语言,实现一个简单的GUI应用程序,并介绍相关的技术和方法。

二、实验目标本实验的目标是设计并实现一个简单的GUI应用程序,要求具备以下功能:1. 显示一个窗口,并在窗口中心显示一个标签;2. 在窗口中添加一个按钮,并实现按钮的点击事件;3. 当按钮被点击时,标签的文本发生变化。

三、实验过程1. 环境准备在开始实验之前,需要确保已经安装了Java开发环境(JDK)和集成开发环境(IDE),例如Eclipse或IntelliJ IDEA。

2. 创建GUI应用程序首先,创建一个Java项目,并创建一个名为"GUIApplication"的类。

在该类中,引入Java的GUI库,并继承JFrame类,实现一个窗口。

3. 设计窗口布局在窗口的构造方法中,设置窗口的标题、大小和关闭方式。

然后,创建一个JPanel对象,并将其添加到窗口中。

在JPanel中,使用布局管理器(例如FlowLayout或GridBagLayout)来安排组件的位置和大小。

4. 添加标签和按钮在JPanel中,创建一个JLabel对象,并设置其文本和位置。

然后,创建一个JButton对象,并设置其文本和点击事件。

在点击事件中,通过修改JLabel的文本来实现标签内容的变化。

5. 运行程序完成以上步骤后,编译并运行程序。

将会显示一个窗口,其中包含一个标签和一个按钮。

当按钮被点击时,标签的文本会发生变化。

四、实验结果经过以上步骤,成功实现了一个简单的GUI应用程序。

运行程序后,窗口显示如下图所示:(插入程序运行截图)在窗口中心显示了一个标签,标签的文本为"Hello, GUI!"。

Java图形界面实验报告

Java图形界面实验报告

实验报告2013学年第 1 学期任课老师:课程名称Java语言与系统设计班级学号姓名实验名称实验4 图形用户界面(GUI)实验时间实验环境PC/windows2000/2003/XP/Jcreator Pro/JBuild/JDK Eclipse/。

实验目的和内容要求实验4 图形用户界面(GUI)1.实验目的掌握布局管理器的使用,掌握JFrame框架、JButton按钮、JLabel标签、JTextField文本框、对话框等组件的使用及其事件处理。

2.实验内容(1)编程:创建有一个文本框和三个按钮的小程序。

当按下每个按钮时,使不同的文字显示在文本框中。

(2)编程:创建一用户登录界面,接受用户输入的帐号和密码,给三次输入机会。

实验过程记录(学生写出实验步骤及中间的结果与现象,在实验中做了什么,怎么做,发生的现象和中间结果)实验步骤:1.建立一个类继承JFrame,然后初始化界面,给三个按钮添加监听器,点击之后进行判断。

然后根据接收信息是不同的文字出现在文本框中。

2.登录界面共有5个键,登录提示有只能输入3次密码,在登录按钮上添加监听器,每次点击之后都判断,不成功就显示失败,成功就弹出成功弹窗;实验结果分析与总结1、程序运行结果(请提供所完成的各道题运行结果界面截图):2、实验过程中的发现与收获,未解决或需进一步解决的问题:实现的比较简单,界面做的非常简陋,但还算实现了基本功能。

指导老师评阅意见指导老师:***填写内容时,可把表格扩大。

附:实验源程序代码//第一题package com.miao;import java.awt.FlowLayout;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.awt.event.WindowAdapter;import java.awt.event.WindowEvent;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.JTextField;public class Example extends JFrame implements ActionListener { private static final long serialVersionUID = 1L;private JPanel jPanel;private JButton jButton1,jButton2,jButton3;private JTextField tf1;public void test(String title) {init();}private void init() {jPanel=new JPanel();jPanel.setLayout(new FlowLayout());tf1=new JTextField(20);jButton1=new JButton("按钮1");jButton2=new JButton("按钮2");jButton3=new JButton("按钮3");jButton1.addActionListener(this);jButton2.addActionListener(this);jButton3.addActionListener(this);jPanel.add(tf1);jPanel.add(jButton1);jPanel.add(jButton2);jPanel.add(jButton3);this.add(jPanel);this.setSize(300,100);this.setResizable(false);this.setTitle("Show");this.setVisible(true);this.addWindowListener(new WindowAdapter() {public void windowClosing(final WindowEvent e) {System.exit(0);}});}public void actionPerformed(ActionEvent e) {if(e.getSource().equals(jButton1)){tf1.setText("lalalalalala");}if(e.getSource().equals(jButton2)){tf1.setText("heihei");}if(e.getSource().equals(jButton3)){tf1.setText("gaga");}}public static void main(String[] args){String s="文字转化";Example test=new Example();test.test(s);}}//第二题,登录package com.miao;import java.awt.HeadlessException;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.JPanel;import javax.swing.JPasswordField;import javax.swing.JTextField;@SuppressWarnings("serial")public class Test extends JFrame {JLabel lbl1 = new JLabel("用户名:");JLabel lbl2 = new JLabel("密码:");JTextField txt = new JTextField("admin",20);JPasswordField pwd = new JPasswordField(20);JButton btn = new JButton("登录");JPanel pnl = new JPanel();private int error = 0;public void text() throws HeadlessException {init();}private void init() {this.setResizable(false);this.setTitle("测试");pnl.add(lbl1);pnl.add(txt);pnl.add(lbl2);pnl.add(pwd);pnl.add(btn);this.getContentPane().add(pnl);btn.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {if (error<3&&"123".equals(new String(pwd.getPassword()))){// pnl.removeAll();// JLabel lbl3 = new JLabel();// pnl.add(lbl3);JOptionPane.showMessageDialog(null,"登陆成功!");}else if(error < 3){JOptionPane.showMessageDialog(null,"密码输入错误,请再试一次");error++;}else if(error >=3){JOptionPane.showMessageDialog(null,"对不起,您不是合法用户"); // txt.setEnabled(false);// pwd.setEnabled(false);// btn.setEnabled(false);error++;}}});}public static void main(String[] args) {// String str="测试";Test frm = new Test();frm.text();frm.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frm.setBounds(100, 100, 300, 120);frm.setVisible(true);frm.setLocationRelativeTo(null);// frm.text("测试");}}。

java图形实验报告doc

java图形实验报告doc

java图形实验报告篇一:java实验报告实验六Java图形用户界面信息工程学院Java程序设计实习报告JAVA图形用户界面实验六Java图形用户界面1.实验目的(1)掌握图形用户界面基本组件。

(2)了解如何使用布局管理器对组件进行管理。

(3)掌握Java事件处理机制。

2.实验内容实验题1 编写一个模拟计算器的程序,使用面板和网格布局,添加一个文本框,10个数字按钮(0-9),4个加减乘除按钮,一个等号按钮,一个清除按钮,要求将计算公式和结果显示在文本框中。

运行结果:实验报告的内容与格式按任课教师的要求书写。

加法:主要代码:private void initComponents() {setStub(null); jButton1 = new ; jButton2 = new ; jButton3 = new ; jButton4 = new ; jButton5 = new ;jButton6 = new ; jButton7 = new ; jButton8 = new ; jButton9 = new ; jButton10 = new ; jButton11 = new ; jButton12 = new ; jButton13 = new ; jButton14 = new ; jButton15 = new ; jTextField1 = new ;jButton1.setText("3"); jButton1.addActionListener(new {public voidactionPerformed( evt) {jButton2.setText("1"); jButton2.addActionListener(new}); } jButton1ActionPerformed(evt); {public voidactionPerformed( evt) {jButton3.setText("5"); jButton3.addActionListener(new}); } jButton2ActionPerformed(evt); {public voidactionPerformed( evt) {jButton4.setText("2"); jButton4.addActionListener(new}); } jButton3ActionPerformed(evt); {public voidactionPerformed( evt) {jButton5.setText("6");}); } jButton4ActionPerformed(evt);jButton5.addActionListener(new {public voidactionPerformed( evt) {jButton6.setText("8"); jButton6.addActionListener(new}); } jButton5ActionPerformed(evt); {public voidactionPerformed( evt) {jButton7.setText("4"); jButton7.addActionListener(new}); } jButton6ActionPerformed(evt); {public voidactionPerformed( evt) {jButton8.setText("7"); jButton8.addActionListener(new}); } jButton7ActionPerformed(evt); {public voidactionPerformed( evt) {jButton9.setText("0");jButton9.addActionListener(new}); } jButton8ActionPerformed(evt); {public voidactionPerformed( evt) {jButton10.setText("9"); jButton10.addActionListener(new}); } jButton9ActionPerformed(evt); {public voidactionPerformed( evt) {jButton11.setText("\u00f7"); jButton11.addActionListener(new}); } jButton10ActionPerformed(evt); {public voidactionPerformed( evt) {jButton12.setText("\u00d7"); jButton12.addActionListener(new}); } jButton11ActionPerformed(evt); {public voidactionPerformed( evt) {jButton13.setText("-"); jButton13.addActionListener(new}); } jButton12ActionPerformed(evt); {public voidactionPerformed( evt) {篇二:JAVA实验报告附件2:实验报告封皮20 —学年第学期课程实验报告学院:计算机科学技术专业:软件工程班级:姓名:学号:任课教师:王薇实验日期:XX年 11 月 02 日-1--2-实验日期:XX年 11 月 06 日-3--4-篇三:java图形用户界面实验报告南京工程学院实验报告课程名称 JAVA基础实验项目名称图形用户界面设计实验学生班级实验学生姓名学号同组学生姓名无实验时间 XX年11月实验地点实验成绩评定指导教师签字年月日一、实验目的和要求1.目的:掌握java AWT及Swing组件的使用方法,包括窗口、框架、对话框、布局方式、面板、文本编辑器、按钮、组合框等,合理利用委托事件处理模型,掌握不同组件,不同事件的事件处理方法,设计出能够响应事件的java图形用户界面。

JAVA图形用户界面试验报告

JAVA图形用户界面试验报告

JA V A实验报告实验目的:学习组件布局和组件事件的处理。

实验要求:编写程序,实现成绩的查询和排序。

具体要求为:①选择合适的布局管理设计美观的界面,包含成绩输入、成绩查询、成绩排序功能。

②成绩输入:从界面上输入学生的学号和成绩,点击“确认”按钮进行保存。

③成绩查询:输入学生的学号,点击“查询”按钮,显示该学生成绩。

④成绩排序:点击“排序”按钮,将按成绩从高到低显示学生的学号和成绩。

实验步骤:①定义一个类表示学生,包含学号和成绩两个域;②用java提供的V ector或Arrays类(也可使用自定义类)存储输入的学生信息,使用java 提供的方法或使用自定义方法实现学生信息的查询和排序;③界面设计,可考虑以下的界面设计策略:ⅰ在界面上放置成绩查询、成绩输入、成绩排序三个按钮和一个文本区:按下成绩输入按钮则弹出一个窗口,该窗口上有学号输入和成绩输入文本框,输入完毕关闭窗口后输入的学生信息出现在文本区中;按下成绩查询按钮弹出一个与成绩输入类似的窗口,在学号文本框中输入学号后,在成绩文本框中立即显示成绩;按下排序按钮,在文本区中显示排序后的结果。

ii 可在界面上用三个Panel分别实现查询、输入、排序功能,分别在各Panel上放置按钮、文本框、文本区等控件。

此步中,要求学生会使用各种布局管理器设计美观的界面。

④为程序添加事件处理机制。

ⅰ为查询、输入、排序按钮添加事件处理;ⅱ为学号、成绩输入文本框添加事件处理;ⅲ为窗口的关闭添加事件处理。

import java.awt.*;import java.awt.event.*;public class jj extends Frame implements ActionListener {private Button add=new Button("添加");private Button search=new Button("查询");private Button up=new Button("排序");private Label snLabel=new Label("学号");private Label gLabel=new Label("成绩");private List list=new List();private TextField taskInput =new TextField();public class WindowsCloser extends WindowAdapter{public void WindowClosing (WindowEvent we){System.exit(0);}}private viod setup(){Panel buttons=new Panel();buttons.setLayout(new FlowLayout());buttons.add(add);buttons.add(search);buttons.add(up);Panel input =new Panel();input.setLayout(new BorderLayout());input.add("West",snLabel);input.add("Center",taskInput);input.add("west",snLabel);input.add("Center",taskInput);Panel top=new Panel();top.setLayout(new GridLayout(2,1));}public TaskList(){}public void actionperformed(ActionEvent ae) {}public static void main (String args[]){List t1 =new List();}}。

java 图形用户界面编程实验报告

java 图形用户界面编程实验报告

实验3 图形用户界面编程(设计性实验)一、实验目的1、熟悉Swing的基本组件,包括文本输入框、多行文本输入框、按钮、列表框等;2、熟悉常用的布局管理器3、了解GUI图像用户界面的设计方法4、掌握Java组件的事件处理机制5、熟悉基于内部类和匿名类的事件处理方式二、实验要求1、学生应做到独立上机操作2、编程前应将程序的设计构想完成,主要包括所要创建的类的结构及属性和行为。

3、上机输入和调试自己所编的程序,并存在自己的软盘上。

4、检查实验结果是否正确。

5、上机结束后,写出实验报告,要求附运行界面、源代码。

实验报告中应对实验结果进行分析,尤其是针对错误输出的分析。

三、实验内容1. 选做:编写程序,显示一个窗口,窗口中包含一个按钮。

当单击按钮时将弹出另一个窗口。

2. 编写一个简单的计算器程序,实现两个数相加。

在文本框输入两个实数,点击“相加”按钮实现两个实数相加,并在标签中显示相加结果。

点击“清除”完成对文本框和运行结果的清除。

四、实验代码及结果1、import javax.swing.*;import java.awt.event.*;import java.awt.*;public class TestFrame{public static void main(String args[]){JFrame f=new JFrame("Test");f.setSize(400,200);f.setLayout(new FlowLayout(FlowLayout.CENTER));f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JButton b=new JButton("确定");b.addActionListener(new ButtonHandler());f.add(b);f.setVisible(true);}}class ButtonHandler implements ActionListener{public void actionPerformed(ActionEvent e){JFrame fr=new JFrame("Hello");fr.setSize(200,100);fr.setVisible(true);}}import javax.swing.*;import java.awt.event.*;import java.awt.*;public class TestCalculator implements ActionListener{JFrame f;JTextField t1;JTextField t2;JTextField t3;JButton b1;JButton b2;public TestCalculator(){f=new JFrame("Calculate");f.setSize(400,200);f.setLayout(new GridLayout(2,3));f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);t1=new JTextField();t2=new JTextField();t3=new JTextField();b1=new JButton("add");b2=new JButton("clear");b1.addActionListener(this);b2.addActionListener(this);f.add(t1);f.add(t2);f.add(t3);f.add(b1);f.add(b2);f.setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==b1){String s1=t1.getText();String s2=t2.getText();int a=Integer.valueOf(s1).intValue();int b=Integer.valueOf(s2).intValue();int c=a+b;t3.setText(Integer.toString(c));}else{t1.setText(" ");t2.setText(" ");t3.setText(" ");}}public static void main(String args[]){ TestCalculator test=new TestCalculator(); }}。

实验四 java图形用户界面设计

实验四 java图形用户界面设计
JMenuBar menubar;//增加组件
JMenu File, Help, edit;
JMenuItem send, quit, about, copy, cut, paste;
JTextField text;
JButton Send, Quit;
JTextArea area;
JComboBox choice, list;
GraphicsEnvironment ge = GraphicsEnvironment
.getLocalGraphicsEnvironment();//获取本地计算机所有可用的字体
String fontmat[] = ge.getAvailableFontFamilyNames();
for (String str : fontmat) {
cut.addActionListener(this);
paste.addActionListener(this);
list.addItemListener(this);
}
public void actionPerformed(ActionEvent e) {
Date now = new Date();//定义时间对象,显示聊天时间
※提示:可以和上述④使用同一个监听器,以减少代码冗余。
⑥创建ActionListener,当按下Quit按钮时,程序退出。
※提示:监听器可以使用内部类实现,退出使用System.exit(0)。
⑦创建WindowListener,按下框架上的Close部件时,程序退出。
※提示:和上述⑧使用同一个监听器,以减少代码冗余。但是,该内部类要同时extendsWindowAdapter还要implements ActionListener,以满足两个不同监听器的要求。

java图形用户界面设计实验总结

java图形用户界面设计实验总结

Java图形用户界面设计实验总结1. 简介本文档是关于Java图形用户界面(GUI)设计实验的总结。

我们将对Java GUI 的基本概念和原理进行介绍,并提供一些实验总结和经验分享。

Java GUI是一种用于创建用户友好界面的技术,在开发各种应用程序时非常重要。

2. Java GUI的基本概念和原理2.1 Java GUI库Java提供了一些库来帮助开发人员创建GUI应用程序。

其中最常用的库是Java Swing和JavaFX。

Swing提供了一组类和方法,用于创建和管理各种GUI组件,例如按钮、文本框、标签等。

JavaFX是一个更现代化的GUI库,提供了更好的图形渲染和动画效果。

2.2 GUI组件Java GUI应用程序通常由一系列GUI组件组成。

最常见的GUI组件包括:•按钮(Button):用于触发各种操作;•标签(Label):用于展示文本信息;•文本框(TextField):用于输入文本;•列表框(ListBox):用于显示一个选项列表;•组合框(ComboBox):同时兼具列表框和文本框的功能;•复选框(CheckBox):用于选择一个或多个选项;•单选按钮(RadioButton):用于从一组选项中选择一个。

2.3 事件处理Java GUI应用程序通常需要对用户的操作做出响应。

为此,需要使用事件处理机制。

事件处理机制通常由两个主要部分组成:事件源和事件监听器。

事件源可以是任何GUI组件,例如按钮、文本框等。

事件监听器是一个类,用于响应和处理特定事件。

3. 实验总结和经验分享在完成Java GUI设计实验时,我得出了以下总结和经验分享:•熟悉GUI组件的使用:在开始实验之前,我花了一些时间学习和理解不同GUI组件的使用方法。

这让我能够更好地选择和使用适当的组件来实现我的GUI应用程序。

•构建用户友好的界面:一个好的GUI应用程序应该是用户友好的。

在实验中,我学会了如何通过合理的布局、适当的颜色和字体选择来创建一个用户友好的界面。

java实验报告 图形用户界面设计 GUI

java实验报告 图形用户界面设计 GUI

实验报告实验目的:1、熟悉GUI设计步骤2、掌握GUI各个组件的用法实验要求:1.使用BorderLayout将JFrame布局分为左右两块;左边使用GridLayout,半酣3个按钮;;右边JLabel 里显示一幅幅画,按钮空JLabel是否显示滚动条。

源代码如下:import javax.swing.*;import java.awt.*;public class frameTest{public static void main(String args[]){CFrame frame=new CFrame("Frame Test");Container pane=frame.getContentPane();pane.add(new leftPanel(),BorderLayout.WEST);pane.add(new rightPanel(),BorderLayout.EAST);frame.pack();frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);}}class CFrame extends JFrame{public CFrame(String title){setTitle(title);setBackground(Color.BLUE);}}class leftPanel extends JPanel{public leftPanel(){JButton bt1=new JButton("view");JButton bt2=new JButton("clear");JButton bt3=new JButton("no idea");setLayout(new GridLayout(2,2,100,100));add(bt1);add(bt2);add(bt3);bt1.addActionListener(this);bt2.addActionListener(this);bt3.addActionListener(this);}}class rightPanel extends JPanel{public rightPanel(){JLabel label=new JLabel(new ImageIcon("image.jpg"));label.setToolTipText("西瓜帽");JScrollPane scr=newJScrollPane(label,ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS,ScrollPaneConstants.HORIZONTAL _SCROLLBAR_ALWAYS);add(label);add(scr);}}运行结果如图所示2. 练习使用对话框。

JAVA实验-图形界面设计

JAVA实验-图形界面设计

广州大学学生实验报告开课学院及实验室:计算机科学与工程实验室2014年11月14日一、实验目的实验十图形用户界面(1)1.了解图形用户界面基本组件窗口、按钮、文本框、选择框、滚动条等的使用方法,·2.了解如何使用布局管理器对组件进行管理,以及如何使用Java 的事件处理机制。

实验十一图形用户界面(2)1.了解图形用户界面基本组件窗口、按钮、文本框、选择框、滚动条等的使用方法,2.了解如何使用布局管理器对组件进行管理,以及如何使用Java 的事件处理机制。

二、实验器材MacBook Pro一台操作系统:OS X Yosemite\编程软件:eclipse三、实验要求实验十图形用户界面(1)1. 理解Java 的事件处理机制,掌握为不同组件编写事件处理程序的方法。

2. 掌握编写独立运行的窗口界面的方法。

3. 了解Java Swing 组件的使用方法。

4. 了解对话框的使用方法。

实验十一图形用户界面(2)¥1. 理解Java 的事件处理机制,掌握为不同组件编写事件处理程序的方法。

2. 掌握编写独立运行的窗口界面的方法。

3. 了解Java Swing 组件的使用方法。

4. 了解对话框的使用方法。

四、实验过程原始数据记录实验十图形用户界面(1)…1. 如下图所示,用了三个文本框,第一个文本框给用户输入商品单价,第二个则是给用户输入商品数量,第三个用于显示总金额。

代码:import class test_2_1_1 extends JFrame implementsActionListener{public static void main(String[] args) {ddDocumentListener(new DocumentListener() {"@Overridepublic void removeUpdate(DocumentEvent e) {ddDocumentListener(new DocumentListener() {@Overridepublic void removeUpdate(DocumentEvent e){quals("计算")){?if (!canCal){showMessage("输入的数据不合法");return;}double sum = ()) *());(sum));#}}制作如下图所示的界面,当用户点击单选按钮时,会在一个标签上显示出当前所选定的数据库服务器类型。

java实验报告5(图形用户界面)

java实验报告5(图形用户界面)

2012—2013学年第 1 学期合肥学院数理系实验报告课程名称:《面向对象程序设计》实验项目:图形用户界面实验类别:综合性□设计性√验证性□专业班级:10信息与计算科学班姓名:学号:实验地点:校内机房实验时间:2012.11.19 —2012.11.25指导教师:钱泽强成绩:一、实验目的掌握Java中图形界面设计的基本元素和方法,熟练使用常用组件设计图形界面,掌握布局管理器的使用,掌握事件的处理方法。

二、实验内容1、设计图形界面,掌握FlowLayout、BorderLayout、CardLayout、GridLayout布局管理器的使用,并掌握组件的精确定位方式;2、掌握事件处理的三种常见的实现方式:·通过主类创建监听器对象的实现方式;·通过自定义内部类创建监听器对象的实现方式;·在注册时通过匿名类直接创建监听器对象的实现方式。

3、设计图形用户界面的应用程序。

三、实验方案(程序设计说明)[题目1] 编写图形界面用户程序,采用事件处理的三种实现方法求一个数的平方。

1、在图形界面中提供“文本框、标签、按钮”,文本框用于输入数据,标签显示数据的平方,单击按钮可以实现求数据的平方;2、分别采用事件处理的三种方法实现。

[题目2] 编写图形界面用户程序,实现“幸运数”游戏。

要求如下:1、在图形界面用户程序中提供“按钮、标签”等组件;2、标签用于显示随机数,单击按钮可以改变随机数并实现对随机数的判断:若两数相等,则出现相等提示,否则出现不等提示。

四、实验程序和运行结果请附页记录正确的源程序五、实验总结六、教师评语及成绩1、求平方import javax.swing.*;import java.awt.*;import java.awt.event.*;//通过主类创建监听器对象class myFrame extends JFrame implements ActionListener{ JLabel l; JButton b; JTextField t;myFrame(JFrame f){ l=new JLabel("0"); b=new JButton("求平方"); t=new JTextField("0");f.setLayout(null);f.add(l); f.add(b); f.add(t);t.setBounds(1,1,60,20); b.setBounds(71,1,60,20); l.setBounds(141,1,60,20);b.addActionListener(this); }public void actionPerformed(ActionEvent e){ int x=Integer.parseInt(t.getText());int y=x*x; l.setText(Integer.toString(y)); }}//通过自定义内部类创建监听器对象class myFrame extends JFrame{ JLabel l; JButton b; JTextField t;myFrame(JFrame f){ l=new JLabel("0"); b=new JButton("求平方"); t=new JTextField("0");f.setLayout(null);f.add(l); f.add(b); f.add(t);t.setBounds(1,1,60,20); b.setBounds(71,1,60,20); l.setBounds(141,1,60,20); BHandler h=new BHandler();b.addActionListener(h); }private class BHandler implements ActionListener {public void actionPerformed(ActionEvent e){ int x=Integer.parseInt(t.getText());int y=x*x; l.setText(Integer.toString(y)); }}}//在注册时通过匿名类直接创建临听器对象class myFrame extends JFrame{ JLabel l; JButton b; JTextField t;myFrame(JFrame f){ l=new JLabel("0"); b=new JButton("求平方"); t=new JTextField("0");f.setLayout(null);f.add(l); f.add(b); f.add(t);t.setBounds(1,1,60,20); b.setBounds(71,1,60,20); l.setBounds(141,1,60,20);b.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){ int x=Integer.parseInt(t.getText());int y=x*x; l.setText(Integer.toString(y)); }});}}public class test {public static void main(String[] args) {JFrame jf=new JFrame("平方数"); jf.setBounds(100,100,400,300); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);jf.setVisible(true);myFrame myf=new myFrame(jf); }}2、幸运数import javax.swing.*;import java.awt.*;import java.awt.event.*;import java.util.Random;class myJFrame extends JFrame implements ActionListener{ private JButton jb;private JLabel [] jl;public myJFrame(JFrame f){ f.setSize(300,300);f.setLayout(new FlowLayout());jl=new JLabel[3];for(int i=0; i<3; i++){ jl[i]=new JLabel("*");f.add(jl[i]); }jl[2].setText("试一试");jb=new JButton("开始");jb.addActionListener(this);f.add(jb);}public void actionPerformed(ActionEvent e){ Random x=new Random();Random y=new Random();jl[0].setText(Integer.toString(x.nextInt(10)));jl[1].setText(Integer.toString(x.nextInt(10)));if (jl[0].getText().equals(jl[1].getText()))jl[2].setText("恭喜您");elsejl[2].setText("再试试");}}public class test{public static void main(String[] args) {JFrame f=new JFrame("我的窗口");f.setBounds(100,100,400,300);f.setVisible(true);f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); myJFrame m=new myJFrame(f); }}。

实验五 Java图形用户界面设计

实验五 Java图形用户界面设计

§5 Java 图形用户界面设计§实验目的、内容及性质掌握Java 的GUI 设计技术,掌握AWT 和Swing 的应用技巧。

实验性质:验证、必做实验学时:2学时§问题及思考1、最常见的AWT以及Swing控件用法。

2、几个常见布局总结3、区分容器控件和一般非容器控件4、Java事件几种关键组成部分以及事件处理流程§实验指导public class MyFrm extends JFrame{容器.setLayout(new FlowLayout);2)、网格布局:GridLayout 按照指定行数与列数,将容器分成大小相等的单元格每个单元格放置一个控件. 不能将控件放在指定单元格容器.setLayout(new GridLayout(3,4,10,15));3)、边界布局:BorderLayout 将容器分成东、西、南、北、中五个部分容器.setLayout(new BorderLayout());窗口的内容面板默认布局就是边界布局。

容器.add(控件,;4)、混合布局:使用JPanel,将多个布局组合在一起使用JPanel jp=(JPanel)();for(int i=0;i<;i++)btn[i]=new JButton("btn"+i);JPanel jp1=new JPanel();etLayout(null);每个控件在放置在容器之前,必须设置其边界setBounds(x,y,width,height); (10,100,30,60);3、Swing示例Grid布局..2)、事件Event:ActionEvent,KeyEvent,WindowEvent,TextEvent,...3)、事件侦听者Listener(接口)ActionListener,WindowListener,...class A implements ActionListener{public void actionPerformed(ActionEvent e){....}}A lis=new A();4)、事件处理函数public void actionPerformed(ActionEvent e){....}事件流程:事件源触发事件-->事件源侦听者接收事件-->自动调用相应事件处理函数.编程模板:class MyFrm extends JFrame implements ActionListener{JButton btn=new JButton("OK");...public MyFrm(){...(this);...}public void actionPerformed(ActionEvent e){....if()==btn){}}Java事件处理示例:import .*;import .*;import class MyFrm extends JFrame implements ActionListene r{ /* 界面中需要的组件作为属性声明*/JTextField txt = new JTextField(10);JLabel lbl = new JLabel("姓名");JButton btn = new JButton("查询");/* 组件在构造函数中放置在窗体JFrame上*/public MyFrm() {/* 获取JFrame的内容面板ContentPane,控件放在该面板上*/JPanel jp = (JPanel) ();/* 设置面板布局Layout,如何放*/(new FlowLayout());(lbl);(txt);(btn);/* 为事件源加一个侦听者*/(this);;}/* 事件处理方法*/public void actionPerformed(ActionEvent e){(this, "btn点击");}public static void main(String arg[]) {(true);;import .*;import class MyFrm extends JFrame implements ActionListener{JButton btn=new JButton("Click Me");public MyFrm(){JPanel jp=(JPanel)();(new FlowLayout());(btn);(this);("Action Event");;}public void actionPerformed(ActionEvent e){(this,"Click Me 按钮被点击");}}package Ex5_3;import .*;import .*;import class Test {public static void main(String[] args) {MyFrm frm = new MyFrm();(400, 300);(true);}}4、编写一个程序实现用户登录界面当用户登录按下确定键,判断用户是否录入了用户名与密码,如果没有按或用户名不为admin 密码不为1234 都需要提示错误。

Java基础实验报告图形用户界面设计

Java基础实验报告图形用户界面设计

南京工程学院实验报告课程名称 JAVA基础实验项目名称图形用户界面设计实验学生班级实验学生姓名学号同组学生姓名实验时间实验地点实验成绩评定指导教师签字年月日一、实验目的和要求1.掌握Java Swing组建的使用方法,包括窗口、框架、对话框、面板、文本编辑框、按钮、组合框等多种布局方式,掌握窗口菜单和快捷菜单设计方式。

2.理解委托时间处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事件的Java图形用户界面。

3.熟悉在组件上绘图的方法。

二、实验题目用表格存储并显示个人所得税税率表,给定一个月收入值,计算应缴的个人所得税。

三、实验方法与步骤(需求分析、算法设计思路、流程图等)算法设计思路:本次实验题目为计算个人所得税,所以本人从网上找到了国家最新的税收政策,以下为截图:因此,我设计了以下核心算法public void actionPerformed(ActionEvent e){if(e.getSource()==button_b){doublewage=Double.parseDouble((String)text_wage.getText());double tax = 0;if(wage<=3500)tax=0;if(wage>3500&&wage<=5000)tax=(wage-3500)*0.03;if(wage>5000&&wage<=8000)tax=(wage-3500)*0.1-105;if(wage>8000&&wage<=12500)tax=(wage-3500)*0.2-555;if(wage>12500&&wage<=38500)tax=(wage-3500)*0.25-1005;if(wage>38500&&wage<=58500)tax=(wage-3500)*0.3-2755;if(wage>58500&&wage<=83500)tax=(wage-3500)*0.35-5505;if(wage>83500)tax=(wage-3500)*0.45-13505;text.setText(""+tax);}}以上算法是根据税率表设计的,具体为:我国规定个人收入在3500元起征个人所得税,分了多个阶段:3500以下:不收税3500以上到5000以下部分:3%5000以上到8000以下部分:10%8000以上到以下部分:20%125000以上到385000以下部分:25%385000以上到585000以下部分:30%585000以上到835000以下部分:35%83500以上:45%首先算出每个阶段的速扣数,然后用此公式:应纳个人所得税税额=(应纳税所得-扣除标准)*适用税率-速算扣除数。

java图形实验报告范文

java图形实验报告范文

java图形实验报告范文篇一:java实验报告实验六Java图形用户界面信息工程学院Java程序设计JAVA图形用户界面实验六Java图形用户界面1.实验目的(1)掌握图形用户界面基本组件。

(2)了解如何使用布局管理器对组件进行管理。

(3)掌握Java事件处理机制。

2.实验内容实验题1编写一个模拟计算器的程序,使用面板和网格布局,添加一个文本框,10个数字按钮(0-9),4个加减乘除按钮,一个等号按钮,一个清除按钮,要求将计算公式和结果显示在文本框中。

运行结果:的内容与格式按任课教师的要求书写。

加法:主要代码:etStub(null);jButton1=newjava某.wing.JButton();jButton2=newjava某.wing.JButton();jButton3=newjava某.wing.JButton();jButton4=newjava某.wing.JButton();jButton5=newjava某.wing.JButton();jButton6=newjava某.wing.JButton();jButton7=newjava某.wing.JButton();jButton8=newjava某.wing.JButton();jButton9=newjava某.wing.JButton();jButton10=newjava某.wing.JButton();jButton11=newjava某.wing.JButton();jButton12=newjava某.wing.JButton();jButton13=newjava某.wing.JButton();jButton14=newjava某.wing.JButton();jButton15=newjava某.wing.JButton();jTe某tField1=newjava某.wing.JTe某tField();jButton1.etTe某t("3");jButton1.addActionLitener(newjava.awt.event.ActionLitener (){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton2.etTe某t("1");jButton2.addActionLitener(new});}jButton1ActionPerformed( evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton3.etTe某t("5");jButton3.addActionLitener(new});}jButton2ActionPerformed( evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton4.etTe某t("2");jButton4.addActionLitener(new});}jButton3ActionPerformed( evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton5.etTe某t("6");});}jButton4ActionPerformed(evt);jButton5.addActionLitener(newjava.awt.event.ActionLitener(){ publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton6.etTe某t("8");jButton6.addActionLitener(new});}jButton5ActionPerformed( evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton7.etTe某t("4");jButton7.addActionLitener(new});}jButton6ActionPerformed( evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton8.etTe某t("7");jButton8.addActionLitener(new});}jButton7ActionPerformed( evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton9.etTe某t("0");jButton9.addActionLitener(new});}jButton8ActionPerformed( evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton10.etTe某t("9");jButton10.addActionLitener(new});}jButton9ActionPerformed (evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton11.etTe某t("\u00f7");jButton11.addActionLitener(new});}jButton10ActionPer formed(evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton12.etTe某t("\u00d7");jButton12.addActionLitener(new});}jButton11ActionPer formed(evt);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){jButton13.etTe某t("-");jButton13.addActionLitener(new});}jButton12ActionPerformed(ev t);java.awt.event.ActionLitener(){publicvoidactionPerformed(java.awt.event.ActionEventevt){篇二:JAVA实验报告附件2:实验报告封皮20—学年第学期课程实验报告学院:计算机科学技术专业:软件工程班级:姓名:学号:任课教师:王薇实验日期:2022年11月02日-1--2-实验日期:2022年11月06日-3--4-篇三:java图形用户界面实验报告南京工程学院实验报告课程名称JAVA基础实验项目名称图形用户界面设计实验学生班级实验学生姓名学号同组学生姓名无实验时间2022年11月实验地点实验成绩评定指导教师签字年月日一、实验目的和要求1.目的:掌握javaAWT及Swing组件的使用方法,包括窗口、框架、对话框、布局方式、面板、文本编辑器、按钮、组合框等,合理利用委托事件处理模型,掌握不同组件,不同事件的事件处理方法,设计出能够响应事件的java图形用户界面。

软件专业研究生实验报告

软件专业研究生实验报告

实验名称:基于Java的图形用户界面设计一、实验目的1. 熟悉Java图形用户界面设计的基本概念和常用组件。

2. 掌握Swing库的使用,能够设计简单的图形用户界面。

3. 培养编程实践能力,提高问题解决能力。

二、实验环境1. 操作系统:Windows 102. 开发工具:Eclipse IDE for Java Developers3. 编程语言:Java4. 开发库:Swing库三、实验内容1. 创建一个简单的图形用户界面,包括窗口、按钮、标签、文本框等组件。

2. 实现按钮点击事件,输出信息到控制台。

3. 设计一个带有滚动条的面板,展示大量数据。

4. 使用布局管理器(如FlowLayout、BorderLayout、GridLayout等)对界面进行布局。

四、实验步骤1. 创建一个名为“GUIProject”的Java项目,在Eclipse中导入Swing库。

2. 创建一个名为“MainFrame”的类,继承自JFrame类,作为主窗口。

3. 在“MainFrame”类中,添加以下代码:```javaimport javax.swing.;import java.awt.;public class MainFrame extends JFrame {public MainFrame() {// 设置窗口标题setTitle("图形用户界面设计");// 设置窗口大小setSize(500, 400);// 设置关闭操作setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置布局管理器setLayout(new BorderLayout());// 创建按钮JButton button = new JButton("点击我");// 添加按钮到窗口add(button, BorderLayout.CENTER);// 添加事件监听器button.addActionListener(e -> {System.out.println("按钮被点击了!");});}public static void main(String[] args) {// 创建窗口实例MainFrame frame = new MainFrame();// 显示窗口frame.setVisible(true);}}```4. 修改“MainFrame”类,添加滚动条和标签:```javaimport javax.swing.;import java.awt.;public class MainFrame extends JFrame {public MainFrame() {// ...(省略其他代码)// 创建面板JPanel panel = new JPanel();// 设置布局管理器panel.setLayout(new GridLayout(0, 1));// 创建标签JLabel label = new JLabel("这是一个标签");// 添加标签到面板panel.add(label);// 创建滚动条JScrollPane scrollPane = new JScrollPane(panel); // 添加滚动条到窗口add(scrollPane, BorderLayout.CENTER);}// ...(省略其他代码)}```5. 运行程序,观察效果。

Java图形用户界面设计(GUI),辽宁工程技术大学,理学院

Java图形用户界面设计(GUI),辽宁工程技术大学,理学院

辽宁工程技术大学上机实验报告实验内容:(1)设计一个简易计算器,在“操作数”标签右侧的两个文本框输入操作数,当单击“+,-,*,/”按钮时,对两个操作数进行运算并将结果填到“结果”标签右侧的文本框中。

具体程序如下:import java.awt.event.*;import javax.swing.*;class Compute extends JFrame{public Compute(){final String a,b;JFrame Compute = new JFrame("简单计算器");JLabel lb1 = new JLabel("操作数:");JLabel lb2 = new JLabel("操作数:");JLabel lb3 = new JLabel("结果:");final JTextField txt1 = new JTextField();a=txt1.getText();final JTextField txt2 = new JTextField();b=txt2.getText();final JTextField txt3 = new JTextField();JButton jb1 = new JButton("+");JButton jb2 = new JButton("-");JButton jb3 = new JButton("*");JButton jb4 = new JButton("/");JButton jb5 = new JButton("清除");Compute.setBounds(100,100,480,215);Compute.setVisible(true);Compute.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);Compute.setLayout(null);Compute.add(lb1);Compute.add(lb2);Compute.add(lb3);Compute.add(txt1);Compute.add(txt2);Compute.add(txt3);Compute.add(jb1);Compute.add(jb2);Compute.add(jb3);Compute.add(jb4);Compute.add(jb5);lb1.setBounds(50,40,100,20);lb2.setBounds(50,80,100,20);lb3.setBounds(50,120,100,20);txt1.setBounds(100,40,150,20);txt2.setBounds(100,80,150,20);txt3.setBounds(100,120,150,20);jb1.setBounds(300,30,50,20);jb2.setBounds(300,60,50,20);jb3.setBounds(300,90,50,20);jb4.setBounds(300,120,50,20);jb5.setBounds(375,70,70,30);jb1.addMouseListener(new MouseListener(){public void mouseClicked(MouseEvent e) {double x=Double.valueOf(txt1.getText());double y=Double.valueOf(txt2.getText());txt3.setText(Double.toString(x+y));}public void mousePressed(MouseEvent e) {}public void mouseReleased(MouseEvent e) {}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {} });jb2.addMouseListener(new MouseListener(){public void mouseClicked(MouseEvent e) {Double x=Double.valueOf(txt1.getText());Double y=Double.valueOf(txt2.getText());txt3.setText(Double.toString(x-y));}public void mousePressed(MouseEvent e) {}public void mouseReleased(MouseEvent e) {}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}});jb3.addMouseListener(new MouseListener(){public void mouseClicked(MouseEvent e) {Double x=Double.valueOf(txt1.getText());Double y=Double.valueOf(txt2.getText());txt3.setText(Double.toString(x*y));}public void mousePressed(MouseEvent e) {}public void mouseReleased(MouseEvent e) {}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}});jb4.addMouseListener(new MouseListener(){public void mouseClicked(MouseEvent e) {Double x=Double.valueOf(txt1.getText());Double y=Double.valueOf(txt2.getText());txt3.setText(Double.toString(x/y));}public void mousePressed(MouseEvent e) {}public void mouseReleased(MouseEvent e) {}public void mouseEntered(MouseEvent e) {}public void mouseExited(MouseEvent e) {}});jb5.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent arg0){txt1.setText("");txt2.setText("");txt3.setText("");txt1.requestFocus();}});}public static void main(String args[]){Compute cp=new Compute();}}运行结果如下:如图所示3.2*4.6=7.8如图所示22.4/6.2=3.612903225806451(2)编写文本移动程序,窗口中有两个文本区和两个按钮,文本区分别位于窗口的左边和右边区域,2个按钮位于窗口的中间区域,当单击“→”按钮时,将左边文本区选中的内容添加到右侧的文本区的末尾。

实验七 图形用户界面设计

实验七  图形用户界面设计

《Java语言程序设计》实验报告private JButton button_1,button_2,button_add,button_clear;public Simcal(){super("Calculator");this.setBounds(300, 240, 320, 90);this.setResizable(false);this.setBackground(java.awt.Color.lightGray);this.setDefaultCloseOperation(EXIT_ON_CLOSE);this.getContentPane().setLayout(new FlowLayout(FlowLayout.LEFT));text = new JTextField("",27);text.setHorizontalAlignment(JTextField.RIGHT);text.setEditable(false);caretUpdate(null);this.getContentPane().add(text);text.addCaretListener(this);//JPanel panel = new JPanel(new GridLayout(1,4));//this.getContentPane().add(panel);button_1 = new JButton("1");button_1.addActionListener(this);//panel.add(button_1);this.getContentPane().add(button_1);button_add = new JButton("+");button_add.addActionListener(this);//panel.add(button_add);this.getContentPane().add(button_add);button_2 = new JButton("2");button_2.addActionListener(this);//panel.add(button_2);this.getContentPane().add(button_2);button_clear = new JButton("C");button_clear.addActionListener(this);//panel.add(button_clear);this.getContentPane().add(button_clear);this.setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==button_1){text.setText(text.getText()+"1");}if(e.getSource()==button_add){text.setText(text.getText()+"+");}if(e.getSource()==button_2){text.setText(text.getText()+"2");}if(e.getSource()==button_clear){text.setText("");}}public void caretUpdate(CaretEvent e){}public static void main(String arg[]){new Simcal();}}运行结果:(2)计算器如果时间允许,实现计算器的加、减、乘、除等基本运算,参考如下图形界面。

实验项目7 Java 图形用户界面设计

实验项目7  Java 图形用户界面设计

实验项目7 Java 图形用户界面设计
1.实验目的
学会使用在Eclipse IDE 下编写和调试 Java Application 程序; 掌握图形用户界面基本组件的使用方法,熟悉布局管理器如何管理组件,掌握Java 事件处理机制;掌握异常概念和 Java 异常处理方法。

2.实验内容
● 设计一个java 应用程序,实现如图所
示的用户登录界面,当单击“确认”按
钮时,能根据预先设定的用户名和密码
进行判断(正确的用户名为“computer ”,
密码为“123456”)如果成功,则在显
示区显示“welcome ”,否则,显示“密
码错误”信息。

当单击“重置”按钮时,
清空用户名和密码的文本框。

● 设计一个java 应用程序,实现具有算术运算功能的简易计算器。

● 设计一个java 应用程
序,实现具有智力测验
功能;测验题自由给定,
界面自由设计,但使界
面美观友好,用户答题
交卷后应能显示答题成
绩和智力评价。

(选做)
登录界面。

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

南京工程学院实验报告课程名称 JAVA基础实验项目名称图形用户界面设计实验学生班级实验学生姓名学号同组学生姓名实验时间实验地点实验成绩评定指导教师签字年月日一、实验目的和要求1.掌握Java Swing组建的使用方法,包括窗口、框架、对话框、面板、文本编辑框、按钮、组合框等多种布局方式,掌握窗口菜单和快捷菜单设计方式。

2.理解委托时间处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事件的Java图形用户界面。

3.熟悉在组件上绘图的方法。

二、实验题目用表格存储并显示个人所得税税率表,给定一个月收入值,计算应缴的个人所得税。

三、实验方法与步骤(需求分析、算法设计思路、流程图等)算法设计思路:本次实验题目为计算个人所得税,所以本人从网上找到了国家最新的税收政策,以下为截图:因此,我设计了以下核心算法public void actionPerformed(ActionEvent e){if(e.getSource()==button_b){doublewage=Double.parseDouble((String)text_wage.getText());double tax = 0;if(wage<=3500)tax=0;if(wage>3500&&wage<=5000)tax=(wage-3500)*0.03;if(wage>5000&&wage<=8000)tax=(wage-3500)*0.1-105;if(wage>8000&&wage<=12500)tax=(wage-3500)*0.2-555;if(wage>12500&&wage<=38500)tax=(wage-3500)*0.25-1005;if(wage>38500&&wage<=58500)tax=(wage-3500)*0.3-2755;if(wage>58500&&wage<=83500)tax=(wage-3500)*0.35-5505;if(wage>83500)tax=(wage-3500)*0.45-13505;text.setText(""+tax);}}以上算法是根据税率表设计的,具体为:我国规定个人收入在3500元起征个人所得税,分了多个阶段:3500以下:不收税3500以上到5000以下部分:3%5000以上到8000以下部分:10%8000以上到以下部分:20%125000以上到385000以下部分:25%385000以上到585000以下部分:30%585000以上到835000以下部分:35%83500以上:45%首先算出每个阶段的速扣数,然后用此公式:应纳个人所得税税额=(应纳税所得-扣除标准)*适用税率-速算扣除数。

然后就得出以上算法。

四、实验原始纪录(源程序、数据结构等)import java.awt.*;import java.awt.event.*;import javax.swing.*;public class WageJFrame extends JFrame implements ActionListener{private JTable table;//表格private Button button_b;//按钮private Object datas[][];//数据String titles[];//标题(为空)private JTextField text;//个人所得税private JTextField text_wage;//输入的工资public WageJFrame(){super("计算个人所得税");Dimension dim=getToolkit().getScreenSize();//获得屏幕分辨率this.setBounds(dim.width/4,dim.height/4,dim.width/2,dim.height/2);/ /设置窗口大小this.setDefaultCloseOperation(EXIT_ON_CLOSE);//关闭窗口this.datas=new Object[8][4];//设置表格长宽JLabel label=new JLabel("工资");//“工资”标签text_wage=new JTextField("5000",7);//默认工资JPanel jpane1=new JPanel();//面板jpane1.add(label);//把标签加入面板中jpane1.add(text_wage);//把输入工资的文本框加入面板中 this.getContentPane().add(jpane1,"North");//把上述面板插入主面板中for(int i=0;i<=7;i++){datas[i][0]=i+1+"";}titles=new String[4];//设置标题titles[0]="级数";titles[1]="含级数距";titles[2]="税率";titles[3]="速扣数";datas[0][1]="不超过3500元";datas[1][1]="超过3500,不超过5000元";datas[2][1]="超过5000,不超过8000元";datas[3][1]="超过8000,不超过12500元";datas[4][1]="超过12500,不超过38500元";datas[5][1]="超过38500,不超过58500元";datas[6][1]="超过58500,不超过83500元";datas[7][1]="超过83500";datas[0][2]="0%";datas[1][2]="3%";datas[2][2]="10%";datas[3][2]="20%";datas[4][2]="25%";datas[5][2]="30%";datas[6][2]="35%";datas[7][2]="45%";datas[0][3]="0";datas[1][3]="0";datas[2][3]="105";datas[3][3]="555";datas[4][3]="1005";datas[5][3]="2755";datas[6][3]="5505";datas[7][3]="13505";table=new JTable(datas,titles);//创建一个表格this.getContentPane().add(new JScrollPane(table),"Center");button_b=new Button("计算个人所得税");button_b.addActionListener(this);//单击按钮响应事件JLabel label1=new JLabel("个人所得税");//创建个人所得税标签text=new JTextField(" ",7);//设置输出框text.setEditable(false);//输出文本框不可编辑JPanel jpane2=new JPanel();//创建一个面板jpane2.add(button_b);//把按钮加到面板中jpane2.add(label1);//把标签加入面板中(个人所得税)jpane2.add(text);//把输出文本框加入面板this.getContentPane().add(jpane2,"South");//把面板2加入主面板this.setVisible(true);//显示界面}public void actionPerformed(ActionEvent e)//响应单击事件{if(e.getSource()==button_b){doublewage=Double.parseDouble((String)text_wage.getText());double tax = 0;if(wage<=3500)tax=0;if(wage>3500&&wage<=5000)tax=(wage-3500)*0.03;if(wage>5000&&wage<=8000)tax=(wage-3500)*0.1-105;if(wage>8000&&wage<=12500)tax=(wage-3500)*0.2-555;if(wage>12500&&wage<=38500)tax=(wage-3500)*0.25-1005;if(wage>38500&&wage<=58500)tax=(wage-3500)*0.3-2755;if(wage>59500&&wage<=83500)tax=(wage-3500)*0.35-5505;if(wage>83500)tax=(wage-3500)*0.45-13505;text.setText(""+tax);}}public static void main(String args[]){new WageJFrame();//创建一个WageJFrame对象}}五、实验结果及分析(计算过程与结果、数据曲线、图表等)1初始界面2 工资为3500时的个人所得税3工资为28850时的个人所得税4工资为85000时的个人所得税六、实验总结与思考通过这次JAVA实验,我清晰地感受到了JAVA语言的魅力,作为现在使用很广的一种编程语言,的确有其补课替代的作用。

相关文档
最新文档