当前位置:文档之家› 实验五-图形用户界面

实验五-图形用户界面

实验五-图形用户界面
实验五-图形用户界面

实验五-图形用户界面

实验五图形用户界面

一、实验目的

1.了解图形用户界面的概念;

2.掌握标签和按钮的使用;

3.掌握文本框和文本区的使用;

4.掌握对话框的定义与使用;

5.掌握Java的事件处理机制;

二、实验要求

1.掌握在容器中添加组件的方法,掌握使用布局管理器对组件进行管

理的方法。

2.理解J a v a的事件处理机制,掌握为不同组件编写事件处理程序的

方法。

3.熟练使用常用组件编写独立运行的窗口界面。

4.熟练使用图形类Gr a p h i c s。

三、实验内容

(一)建立独立运行的窗口界面并使用匿名类

最常使用的包含组件的容器是窗口,在J a v a中窗口由F r a m e类生成。编写S Y4_1.ja v a程序文件,程序功能:创建一个具有关闭功能的空白窗口。源代码如下:

import java.awt.*;

import java.awt.event.*;

public class SY4_1{

SY4_1(){

Frame f=new Frame("初始窗口");

f.setSize(350,200);

f.setVisible(true);

//为窗口添加窗口事件适配器

f.addWindowListener(new WindowAdapter() {

//关闭窗口事件的方法

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

}

public static void main(String[] args) {

new SY4_1();

System.out.println(args[0]+"

"+args[1]);

}

}编译并运行程序

(二)创建图形用户界面

图形用户界面(G UI)是为方便用户使用设计的窗口界面,在图形

用户界面中用户可以看到什么就操作什么,取代了在字符方式下知道是

什么后才能操作什么的方式。组件(C o m p o n e n t)是构成G U I的基本要素,通过对不同事件的响应来完成和用户的交互或组件之间的交互。组

件一般作为一个对象放置在容器(C on t a i n e r)内,容器是能容纳和排

列组件的对象,如P a n e l(面板)、F r a m e(窗口)等。通过容器的ad d

方法把组件加入到容器中。

编写S Y4_2.j a v a程序文件,程序功能:在窗口中添加组件。源代

码如下:

import java.awt.*;

import java.awt.event.*;

public class SY4_2 extends Frame implements ActionListener {

Button btn1, btn2;

TextField f,tf1,tf2;

TextArea Area;

SY4_2(){

super("添加组件的窗口");

addWindowListener(new WindowAdapter() {

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

setSize(350,250); //设置窗口大小

setLocation(200,200);//设置窗口显示位置

setFont(new Font("Arial",Font.PLAIN,12)); //设置字体

setLayout(new FlowLayout());

Area=new TextArea (6,40);

tf1=new TextField(10); tf2=new TextField(10);

btn1=new Button("显示"); btn2=new Button("退出");

f=new TextField(20);

add(Area); add(new Label("用户名"));

add(tf1); add(new Label("电话"));

add(tf2); add(f); add(btn1); add(btn2);

tf1.addActionListener(this);

tf2.addActionListener(this);

btn1.addActionListener(this);

btn2.addActionListener(this);

show();

}

public static void main(String args[]){

new SY4_2();

}

public void actionPerformed(ActionEvent e){

if (e.getSource()==btn1)

f.setText("你按下了" + e.getActionCommand() + "按钮");

if (e.getSource()==tf1)

Area.append("用户名:"+tf1.getText()+"\n");

if (e.getSource()==tf2)

Area.append("电话:"+tf2.getText()+"\n");

if (e.getSource()==btn2){

for (int i=0; i<100000000; i++){}

dispose();

}

}

}编译并运行程序

(三)为窗口添加菜单

程序功能:在窗口中添加菜单栏,在菜单栏添加菜单项,并添加下拉菜

单和2级菜单,通过选择菜单项可以执行不同操作,如“打开”可打开

S Y4_3类生成的窗口。源代码如下:

import java.awt.*;

import java.awt.event.*;

public class SY4_3 extends Frame implements ActionListener {

Panel p=new Panel();

Button b=new Button("退出");

MenuBar mb=new MenuBar();

Menu m1=new Menu("文件");

MenuItem open=new MenuItem("打开");

MenuItem close=new MenuItem("关闭");

MenuItem exit=new MenuItem("退出");

Menu m12=new Menu("编辑");

MenuItem copy=new MenuItem("复制");

MenuItem cut=new MenuItem("剪切");

MenuItem paste=new MenuItem("粘贴");

Menu m2=new Menu("帮助");

MenuItem content=new MenuItem("目录");

MenuItem index=new MenuItem("索引");

MenuItem about=new MenuItem("关于");

SY4_3() {

super("添加菜单的窗口");

setSize(350,200);

add("South",p);

p.add(b);

b.addActionListener(this);

m1.add(open);

m1.add(close);

m1.addSeparator(); //在菜单中添加分隔条

m1.add(exit);

open.addActionListener(this);

exit.addActionListener(this);

mb.add(m1);

m12.add(copy); m12.add(cut); m12.add(paste);

m1.add(m12);

m2.add(content);

m2.add(index);

m2.addSeparator();

m2.add(about);

mb.add(m2);

setMenuBar(mb);

show();

}

public static void main(String args[]) {

new SY4_3();

}

public void actionPerformed(ActionEvent e) { if (e.getActionCommand()=="退出") System.exit(0);

if (e.getActionCommand()=="打开") new SY4_2();

}

}编译并运行程序。

(四)使用S w i n g 组件、了解事件处理机制

在J a v a中,能够实现图形用户界面的类库有两个:j av a.a w t和

j a v a x.s w i n g。前者称为抽象窗口工具库A W T(A b st r a c t W i n d o w s T o o l k i t),后者是J a v a基础类库J F C(J a v a F o u n d at i o n C l a s s e s)的一个组成部分,它提供了一套功能更强、数量更多、更美观的图形用

户界面组件。S w i n g 组件名称和A W T组件名称基本相同,但以J开头,例如A W T按钮类的名称是B u t to n,在S w i n g中的名称则是J B u tt o n。

在图形用户界面中,程序和用户的交互是通过组件响应各种事件来

实现的。例如,用户单击了一个按钮,意味着发生了按钮的单击事件;选中下拉框中的一个选项,意味着发生了一个选项事件。在J a v a中能

产生事件的组件叫做事件源,如按钮。如果希望对单击按钮事件进行处理,可给事件源(按钮)注册一个事件监听器(如包含按钮的容器),如同签订了一个委托合同,当事件源发生事件时,事件监听器就代替事

件源对发生的事件进行处理,这就是所谓的委托事件处理机制。

单击按钮的事件处理程序

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

public class SY4_4 extends JFrame implements ActionListener {

private JPanel jp = new JPanel();

private JButton[] jbArray= { new JButton("自动换行"), new JButton("不换行") };

private JTextArea jta= new JTextArea();

// 将文本区作为被滚动控件创建滚动窗体

JScrollPane jsp= new JScrollPane(jta);

public SY4_4() {

jp.setLayout(null);

for (int i = 0; i < 2; i++) {

jbArray[i].setBounds(20 + i * 110, 120, 90, 20);

jp.add(jbArray[i]);

jbArray[i].addActionListener(this);

jsp.setBounds(20, 20, 450, 80);

jp.add(jsp);

jta.setLineWrap(true);

for (int i = 0; i < 20; i++) {

jta.append("["+ i + "]Hello World!!!!");

}

this.add(jp);

this.setTitle("文本区示例");

this.setResizable(false);

this.setBounds(100, 100, 500, 180);

this.setVisible(true);

}

public void actionPerformed(ActionEvent e) {

if(e.getSource() == jbArray[0]) { jta.setLineWrap(true);

} else if (e.getSource()==jbArray[1]) {

jta.setLineWrap(false);

}

public static void main(String[] args) {

new SY4_4();

}

}

(五)使用布局管理器对组件进行管理

当一个容器组件上要添加多个组件时,就需要进行组件的布局管理。Java中用布局管理器来进行布局管理,主要作用是:用于控制组件在容器中的布局、负责

确定组件在容器中的位置和大小、调用容器的setLayout(布局管理器对象) 方法,为容器指定某种布局。当容器需要定位组件和确定组件大小时,就会给布

局管理器对象发消息,让它完成该项工作。SY4_5.java为网格布局示例。import java.awt.*;

import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.*;

public class SY4_5 extends JFrame implements ActionListener {

private JPanel jp = new JPanel();

private JButton[] jbArray= new JButton[6];

public SY4_5(){

for (int i = 0; i < jbArray.length; i++) {

jbArray[i] = new JButton("按纽"+ (i + 1));

jp.add(jbArray[i]);

jbArray[i].addActionListener(this);

}

this.add(jp);

this.setTitle("网格布局");

this.setBounds(100, 100, 450, 200);

this.setVisible(true);

}

public void actionPerformed(ActionEvent e) {

jp.setLayout(new GridLayout(3, 2));

this.setTitle("现在为网格布局[3,2]");

jp.revalidate();

}

public static void main(String[] args) {

new SY4_5();

}

}编译并运行程序

(六)使用自定义对话框与内部类

对话框是GUI 中很常见的窗口对象,有着广泛的应用。对话框和普通窗口最大的不同就是对话框是依附在某个窗口上,一旦它所依附的窗口关闭了,对话框也要随着关闭。Java 提供了Dialog 类用于制作自定义对话框,当需要改变一些数据或需要一个提示窗口时可使用自定义对话框。

程序功能:创建一个带有文本区及“对话框”按钮的父窗口,单击“对话框”按钮可打开一个自定义对话框,从中可以定义行和列的数值,关闭对话框其设置的设置会显示在父窗口的文本区中。

编写SY4_6.java 程序文件,源代码如下:

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

public class SY4_6 extends JFrame implements ActionListener {

int row=10, col=40;

JPanel p1=new JPanel(), p2=new JPanel();

JTextArea ta=new JTextArea("文本区行数:"+row+"列数:"+col, row, col);

JScrollPane scrollPane=new JScrollPane(ta);

Button exit=new Button("关闭");

Button dialog=new Button("对话框");

JPanel panel=new JPanel();

SY4_6(){

setContentPane(panel);

setTitle("带有对话框的父窗口");

panel.setPreferredSize(new

Dimension(500,200));

panel.setLayout(new BorderLayout());

panel.add("Center", p1); panel.add("South", p2);

p1.add(scrollPane);

p2.add(exit); p2.add(dialog);

exit.addActionListener(this);

dialog.addActionListener(this);

pack();

show();

//setVisible(true);

}

public static void main(String args[]) {

new SY4_6();

}

public void actionPerformed(ActionEvent e) {

if (e.getSource()==exit)

System.exit(0);

else {

MyDialog dlg=new MyDialog(this, true);

dlg.show();

}

}

class MyDialog extends Dialog implements ActionListener {

Label label1=new Label("请输入行数");

Label label2=new Label("请输入列数");

TextField rows=new TextField(50);

TextField columns=new TextField(50);

Button OK=new Button("确定");

Button Cancel=new Button("取消");

MyDialog(SY4_6 parent, boolean modal) {

super(parent,modal);

setTitle("自定义对话框");

setSize(260,140);

setResizable(false);

setLayout(null);

add(label1);

add(label2);

label1.setBounds(50,30,65,20);

label2.setBounds(50,60,65,20);

add(rows);

add(columns);

rows.setText(Integer.toString(ta.getRows()));

columns.setText(Integer.toString(ta.getColumns( )));

rows.setBounds(120,30,90,20);

columns.setBounds(120,60,90,20);

add(OK);

add(Cancel);

OK.setBounds(60,100,60,25);

Cancel.setBounds(140,100,60,25);

OK.addActionListener(this);

Cancel.addActionListener(this);

}

public void actionPerformed(ActionEvent e) {

if(e.getSource()==OK) {

int row=Integer.parseInt(rows.getText());

int col=Integer.parseInt(columns.getText());

ta.setRows(row);

ta.setColumns(col);

ta.setText("文本区行数:"+row+" 列数:"+col);

show();

}

dispose();

}

}

}编译并运行程序

四、实验练习题

1、编写一个H e l lo W o r l d的G U I版本,可以使用AW T或者S w i n g。有对话框能够让用户输入自己的名字,然后在窗口上绘制“H e l l o,$|输入的名字|”。(必做)

import java.awt.event.*;

import javax.swing.*;

public class Test4_1 extends JFrame implements ActionListener{

String str;

JLabel l1=new JLabel("请输入您的名字:");

JButton b1=new JButton("确定");

Test4_1(){

this.setLayout(null);

l1.setBounds(60,40, 180,30);

add(l1);

b1.setBounds(100,80,80,30);

add(b1);

this.setVisible(true);

this.setSize(300,200);

this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0);

}

});

b1.addActionListener(this);

}

public void actionPerformed(ActionEvent e) { String msg = JOptionPane.showInputDialog(this, "请输入信息:", "我的输入对话框",JOptionPane.PLAIN_MESSAGE);

l1.setText("Hello:" + msg );

}

public static void main(String[] args) {

new Test4_1();

}

}

2、编写程序包含一个标签、一个文本框和一个按钮,当用户单击按钮时,程序把文本框中的内容复制到标签中。(必做)

package sy4;

import java.awt.*;

import java.awt.event.*;

public class Test4_2 extends Frame implements ActionListener{

TextField tf=new TextField(15);

Label l1=new Label("请输入您的名字:");

Label l2=new Label();

Button b1=new Button("确定");

Test4_2(){

this.setLayout(null);

l1.setBounds(60,40, 180,30);

add(l1);

tf.setBounds(60,80,180,30);

add(tf);

l2.setBounds(60,120,180,30);

add(l2);

b1.setBounds(100,160,80,30);

add(b1);

this.setVisible(true);

this.setSize(300,250);

this.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0);

}

});

b1.addActionListener(this);

tf.addActionListener(this);

}

public void actionPerformed(ActionEvent e) {

l2.setText("你的姓名是:"+tf.getText());

}

public static void main(String[] args) {

new Test4_2();

}

}

3、设计一个用户登陆界面,运行结果如图示界面。用户名和密码正确,显示如左图,否则显示如

右图。(选做)

用户界面设计实验报告(中南民族大学)

《用户界面设计》实验报告 学号: 姓名: 班级名称: 指导教师:李波 实验日期:

目录 Experiment 1: Evaluation Practices (1) Experiment 2: Design a graphic user interface (3) Experiment 3: Error Messages GUI (12) Experiment 4: Help Document (14)

Experiment 1: Evaluation Practices Use the blank provided to answer the questions. Answer the questions on a scale of 1 to 5, where 1 is a strong no, 5 is a strong yes, and 3 is neutral. If the question does not apply, use a 0.

Experiment 2: Design a graphic user interface Now, you can use the usability measurement to design a graphic user interface .First, you must select a system to finish sessions or tasks for users, so users’ requirements must be analyzed to define all functions you want to realize. Second, you must draw a graphic UI using the software tools, such as Microsoft visual studio, or Visio, or others. All functions must be appeared in this GUI include a main interface and all assistant interfaces. Finally, you must explain why and how you design these GUIs according to the usability measurement and the EIGTH GOLDEN RULES. The document format is described as follow. You can finish this work by PPT or word. 1. The system requirement The system requirement is described here. The main contents include the aims and what the users want to do. 随着信息时代的发展,计算机管理的应用越来越广泛,随着计算机的普及,就连调查问卷也慢慢的脱离了纸质化。对于一个比较大的公司而言,对其客户进行调查问卷是很有必要进行的,而由于客户的分布广,进行纸质的调查问卷不仅浪费财力,还浪费了物力,因此网上调查就避开这一缺点。因此,我设计了一个网上调查问卷系统。这个系统的用户有两类,一类是经销商,一类是经销商的客户,客户通过网上填写问卷,经销商则对客户的问卷进行回收,统计,分析,以做出相应的出售方案。 The aims 1)用户管理

计算机图形学实验报告

计算机图形学 实验报告 姓名:谢云飞 学号:20112497 班级:计算机科学与技术11-2班实验地点:逸夫楼507 实验时间:2014.03

实验1直线的生成 1实验目的和要求 理解直线生成的原理;掌握典型直线生成算法;掌握步处理、分析 实验数据的能力; 编程实现DDA算法、Bresenham中点算法;对于给定起点和终点的 直线,分别调用DDA算法和Bresenham中点算法进行批量绘制,并记 录两种算法的绘制时间;利用excel等数据分析软件,将试验结果编 制成表格,并绘制折线图比较两种算法的性能。 2实验环境和工具 开发环境:Visual C++ 6.0 实验平台:Experiment_Frame_One(自制平台)。 本实验提供名为 Experiment_Frame_One的平台,该平台提供基本 绘制、设置、输入功能,学生在此基础上实现DDA算法和Mid_Bresenham 算法,并进行分析。 ?平台界面:如错误!未找到引用源。所示 ?设置:通过view->setting菜单进入,如错误!未找到引 用源。所示 ?输入:通过view->input…菜单进入.如错误!未找到引用 源。所示 ?实现算法: ◆DDA算法:void CExperiment_Frame_OneView::DDA(int X0, int Y0, int X1, int Y1) Mid_Bresenham法:void CExperiment_Frame_OneView::Mid_Bresenham(int X0, int Y0, int X1, int Y1)

3实验结果 3.1程序流程图 1)DDA算法流程图:开始 定义两点坐标差dx,dy,以及epsl,计数k=0,描绘点坐标x,y,x增 量xIncre,y增量yIncre ↓ 输入两点坐标x1,y1,x0,y0 ↓ dx=x1-x0,dy=y1-y0; _________↓_________ ↓↓ 若|dx|>|dy| 反之 epsl=|dx| epsl=|dy| ↓________...________↓ ↓ xIncre=dx/epsl; yIncre=dy/epsl ↓ 填充(强制整形)(x+0.5,y+0.5); ↓←←←← 横坐标x+xIncre; 纵坐标y+yIncre; ↓↑ 若k<=epsl →→→k++ ↓ 结束 2)Mid_Bresenham算法流程图开始 ↓ 定义整形dx,dy,判断值d,以及UpIncre,DownIncre,填充点x,y ↓ 输入x0,y0,x1,y1 ______↓______ ↓↓ 若x0>x1 反之 x=x1;x1=x0;x0=x; x=x0;

java实验报告实验六Java图形用户界面

信息工程学院 Java程序设计实习报告 JAVA图形用户界面 实验六Java图形用户界面 1.实验目的 (1)掌握图形用户界面基本组件。 (2)了解如何使用布局管理器对组件进行管理。 (3)掌握Java事件处理机制。 2.实验内容 实验题 1 编写一个模拟计算器的程序,使用面板与网格布局,添加一个文本框,10个数字按钮(0-9),4个加减乘除按钮,一个等号按钮,一个清除按钮,要求将计算公式与结果显示在文本框中。 运行结果: 实验报告的内容与格式按任课教师的要求书写。

加法: 主要代码: private void initComponents() { jButton1 = new javax、swing、JButton(); jButton2 = new javax、swing、JButton(); jButton3 = new javax、swing、JButton(); jButton4 = new javax、swing、JButton(); jButton5 = new javax、swing、JButton(); jButton6 = new javax、swing、JButton(); jButton7 = new javax、swing、JButton(); jButton8 = new javax、swing、JButton(); jButton9 = new javax、swing、JButton(); jButton10 = new javax、swing、JButton(); jButton11 = new javax、swing、JButton(); jButton12 = new javax、swing、JButton(); jButton13 = new javax、swing、JButton(); jButton14 = new javax、swing、JButton(); jButton15 = new javax、swing、JButton(); jTextField1 = new javax、swing、JTextField(); setStub(null); jButton1、setText("3"); jButton1、addActionListener(new java、awt、event、

实验8MATLAB图形用户界面设计实验报告

实验8 MATLAB图形用户界面设计实验报告实验报告 课程名称:MATLAB应用成绩: 实验项目名称:MATLAB图形用户界面设计实验时间:11.6 指导教师(签名): 班级:XXXXX 姓名:XXXXX 学号:XXX 实验目的: 1. 熟悉MATLAB的菜单设计方法 2. 熟悉MATLAB的主要控件使用方法 3. 熟悉MATLAB的GUI设计流程 实验环境: MATLAB 7.1 实验内容及过程: 简单计算器的设计:在MATLAB GUI的实验环境中,通过MATLAB图形用户界面设计的方法,设计一个 简单的计算器,以实现简单数据的退出、清屏、删除、四则运算等基本功能。 实验过程、结果及分析:

计算器代码: function varargout = jsq(varargin) gui_Singleton = 1; gui_State = struct('gui_Name', mfilename, ... 'gui_Singleton', gui_Singleton, ... 第 1 页共 6 页 'gui_OpeningFcn', @jsq_OpeningFcn, ... 'gui_OutputFcn', @jsq_OutputFcn, ... 'gui_LayoutFcn', [] , ... 'gui_Callback', []); if nargin && ischar(varargin{1}) gui_State.gui_Callback = str2func(varargin{1}); end if nargout [varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); else

操作系统实验报告

操作系统实验报告 Document number:NOCG-YUNOO-BUYTT-UU986-1986UT

许昌学院 《操作系统》实验报告书学号: 姓名:闫金科 班级:14物联网工程 成绩: 2016年02月

实验一Linux的安装与配置 一、实验目的 1.熟悉Linux系统的基本概念,比如Linux发行版、宏内核、微内核等。 2.掌握Linux系统的安装和配置过程,初步掌握Linux系统的启动和退出方 法。 3.熟悉Linux系统的文件系统结构,了解Linux常用文件夹的作用。 二、实验内容 1.从网络上下载VMware软件和两个不同Linux发行版镜像文件。 2.安装VMware虚拟机软件。 3.在VMware中利用第一个镜像文件完成第一个Linux的安装,期间完成网络 信息、用户信息、文件系统和硬盘分区等配置。 4.在VMware中利用第二个镜像文件完成第二个Linux的安装,并通过LILO或 者GRUB解决两个操作系统选择启动的问题。 5.启动Linux系统,打开文件浏览器查看Linux系统的文件结构,并列举出 Linux常用目录的作用。 三、实验过程及结果 1、启动VMware,点击新建Linux虚拟机,如图所示: 2、点击下一步,选择经典型,点击下一步在选择客户机页面选择 Linux,版本选择RedHatEnterpriseLinux5,如图所示: 3、点击下一步创建虚拟机名称以及所要安装的位置,如图所示: 4、点击下一步,磁盘容量填一个合适大小,此处选择默认值大小 10GB,如图所示: 5、点击完成,点击编辑虚拟机设置,选择硬件选项中的CD-ROM (IDE...)选项,在右侧连接中选择“使用ISO镜像(I)”选项,点 击“浏览”,找到Linux的镜像文件,如图所示:

用户界面实验报告

院系:计算机科学学院专业:计算机科学与技术年级: 2010级 课程名称:用户界面设计学号: 姓名: 指导教师: 2012年 4 月 11 日

目录 《用户界面设计》实验报告............................................ 错误!未定义书签。Experiment 1: Evaluation Practices .. (3) Experiment 2:网页信息内容下载分析及设计 (6) Experiment 3: 错误信息提示界面 (10) Experiment 4:网页信息下载界面用户帮助说明 (12)

Experiment 1: Evaluation Practices This experiment needs 2hours. Each of you is required to valuate five software interfaces from a human factors standpoint using the usability measures. Although these are not difficult assignments, they are an important part of your learning experience as well as a large component of your grade. The following interfaces but not limited to is ready for your selection. 1.Evaluate a cell phone. First you need to tell me what cell phone you have, what carrier you use and what features you evaluated. Features to consider evaluating are making a call, saving and retrieving numbers from memory, text messaging, and configuration. You do not need to evaluate every feature; pick two or three that are interesting to you. It may be hard to completely separate the software from the hardware, but focus on the software. Use the evaluation criteria and checklist provided. Make any additional comments that you feel are necessary, and suggest any additional criteria that you feel are needed. The evaluation of my HTC LTE 4G First of all, my phone is full touch screen virtual keyboard mode, the same with the market most of the intelligent machine is the Andrew system. With 1.2G CPU processor 512M ROM and 512MRAM of, for playing games, I have enough. Camera 5 million pixels, the camera is absolutely no pressure.It also comes with a 4.3-inch large screen, a movie so cool. WIFI is a good way to save traffic, very pleased that my phone has this feature. Overall, the performance of this phone is good, 10 is out, then I gave it 7 points.

Visual FoxPro 程序设计实验报告

VF程序设计实验报告 图书馆管理系统 专业: 学号: 姓名: 指导教师: 2010年12月31日

目录 第一部分系统概述--------------------------------2 第二部分系统功能模块设计------------------------2 第三部分系统数据库及表设计----------------------2 第四部分系统菜单设计----------------------------5 第五部分系统界面设计----------------------------6 第六部分系统相关程序代码-----------------------13 第七部分实验报告小结---------------------------22 第八部分参考资料-------------------------------22

一、系统概述 近年来,随着图书馆规模的不断扩大,图书数量相应的增加,有关图书的各种信息量也成倍增加,面对庞大的信息量,传统的人工管理户导致图书管理的混乱,人力与物力过多的浪费,图书管理费用的增加,从而使图书馆的负担过重,影响整个图书馆的运作和控制管理。因此,为了充分发挥了图书馆的功效,最大限度地为读者服务,必须制定一套合理、有效,规范和实用的图书馆管理系统,对图书资料进行集中统一的管理。 根据上述需要,我们建立本图书馆管理系统。 根据图书、读者和管理员三者之间的关系,本系统主要实现读者对图书的查询、个人信息的修改和管理员对读者、图书的管理。 本系统采用VF6.0作为开发工具。 二、系统功能模块设计 本系统可以完成一般图书馆关于图书查询、借阅及书库管理的主要功能。其中:图书查询模块可以查询所需要的图书;读者管理模块中,读者可以查看自己的信息,对登陆密码进行修改,管理员可以对读者进行添加和删除;图书管理模块中,管理员可以为读者进行图书的借阅和归还操作,以及对图书的信息进行修改,如加入新书、删除不能使用的图书和更新图书的信息;报表打印模块中,实现对需要的信息进行打印输出。系统结构下图所示。 三、数据库及表设计 经分析,图书馆管理系统主要涉及了学生、管理员和图书三部分。因此需要建立的实体就是学生、管理员和图书三个。 根据系统模块的设计,可以的到本系统需要建立的基本表为:读者信息表、

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

南京工程学院 实验报告 课程名称 JAVA基础 实验项目名称图形用户界面设计 实验学生班级 实验学生姓名 学号 同组学生姓名 实验时间 实验地点 实验成绩评定 指导教师签字年月日

一、实验目的和要求 1.掌握Java Swing组建的使用方法,包括窗口、框架、对话框、面板、文本编辑框、按钮、组合框等多种布局方式,掌握窗口菜单和快捷菜单设计方式。 2.理解委托时间处理模型,掌握不同组件、不同事件的事件处理方法,设计出能够响应事件的Java图形用户界面。 3.熟悉在组件上绘图的方法。 二、实验题目 用表格存储并显示个人所得税税率表,给定一个月收入值,计算应缴的个人所得税。 三、实验方法与步骤(需求分析、算法设计思路、流程图等) 算法设计思路:本次实验题目为计算个人所得税,所以本人从网上找到了国家最新的税收政策,以下为截图:

因此,我设计了以下核心算法 public void actionPerformed(ActionEvent e) { if(e.getSource()==button_b) { double wage=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)

Web系统测试实验报告

中北大学软件学院 实 验报告专 业: 软件工程方 向: 软件开发与测试课程名称: 软件测试班 级: 学 号: 姓 名:辅导教师:2017年9月制 通过,而管路高腐跨对 全 部 料试根据资料试以正常设备力保护体配置地缩小行自

成绩: 实验时间年月日时至时学时数 1.实验名称 Web系统测试 2.实验目的 (1)掌握Web系统测试的策略(动态测试和静态测试); (2)掌握Web系统测试的方法(白盒测试和黑盒测试); (3)了解Web系统中的功能测试、性能测试、界面测试、配置测试、兼容性测试、可用性测试、文档测试等。 3.实验内容 题目1:对中北大学软件学院网站进行测试 4.实验原理或流程图 (1)撰写测试计划; (2)撰写测试用例文档; (3)执行测试,提交缺陷报告。、管路敷设技术通过管线敷设技术不仅可以解决吊顶层配置不规范高中资料试卷问题,而且可保障各类管路习题到位。在管路敷设过程中,要加强看护关于管路高中资料试卷连接管口处理高中资料试卷弯扁度固定盒位置保护层防腐跨接地线弯曲半径标高等,要求技术交底。管线敷设技术中包含线槽、管架等多项方式,为解决高中语文电气课件中管壁薄、接口不严等问题,合理利用管线敷设技术。线缆敷设原则:在分线盒处,当不同电压回路交叉时,应采用金属隔板进行隔开处理;同一线槽内,强电回路须同时切断习题电源,线缆敷设完毕,要进行检查和检测处理。、电气课件中调试对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料试卷相互作用与相互关系,根据生产工艺高中资料试卷要求,对电气设备进行空载与带负荷下高中资料试卷调控试验;对设备进行调整使其在正常工况下与过度工作下都可以正常工作;对于继电保护进行整核对定值,审核与校对图纸,编写复杂设备与装置高中资料试卷调试方案,编写重要设备高中资料试卷试验方案以及系统启动方案;对整套启动过程中高中资料试卷电气设备进行调试工作并且进行过关运行高中资料试卷技术指导。对于调试过程中高中资料试卷技术问题,作为调试人员,需要在事前掌握图纸资料、设备制造厂家出具高中资料试卷试验报告与相关技术资料,并且了解现场设备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。、电气设备调试高中资料试卷技术电力保护装置调试技术,电力保护高中资料试卷配置技术是指机组在进行继电保护高中资料试卷总体配置时,需要在最大限度内来确保机组高中资料试卷安全,并且尽可能地缩小故障高中资料试卷破坏范围,或者对某些异常高中资料试卷工况进行自动处理,尤其要避免错误高中资料试卷保护装置动作,并且拒绝动作,来避免不必要高中资料试卷突然停机。因此,电力高中资料试卷保护装置调试技术,要求电力保护装置做到准确灵活。对于差动保护装置高中资料试卷调试技术是指发电机一变压器组在发生内部故障时,需要进行外部电源高中资料试卷切除从而采用高中资料试卷主要保护装置。

Java图形用户界面实验报告

西安邮电大学 (计算机学院) 课内实验报告 实验名称:图形用户界面 专业名称:计算机科学与技术 班级:计科1405班 学生姓名:高宏伟 学号:04141152 指导教师:刘霞林 实验日期:一、实验目的 了解图形用户界面基本组件窗口、按钮、文本框、选择框、滚动条等的使用方法,了解如何使用布局管理器对组件进行管理,以及如何使用Java 的事件处理机制。 二、实验要求 1. 掌握使用布局管理器对组件进行管理的方法。

2. 理解Java 的事件处理机制,掌握为不同组件编写事件处理程序的方法。 3. 掌握编写独立运行的窗口界面的方法。 4. 掌握组件的使用方法。 5. 了解对话框的使用方法。 三、实验内容 (一)算术测试。 实验要求: 编写一个算术测试小软件,用来训练小学生的算术能力。程序由3个类组成,其中Teacher类对象负责给出算术题目,并判断回答者的答案是否正确; ComputerFrame类对象负责为算术题目提供视图,比如用户可以通过 ComputerFrame类对象提供的GUI界面看到题目,并通过该GUI界面给出题目的答 案;MainClass是软件的主类。 程序模板: public class Teacher { int numberOne,numberTwo; String operator=""; boolean right; public int giveNumberOne(int n) { numberOne=(int)()*n)+1; return numberOne; } public int giveNumberT wo(int n) { numberTwo=(int)()*n)+1; return numberTwo; } public String giveOperator() { double d=(); if(d>= operator="+"; else operator="-"; return operator; } public boolean getRight(int answer) { if("+")) { if(answer==numberOne+numberTwo) right=true; else right=false; }

实验八基于图形用户界面的JDBC程序开发

实验4基于图形用户界面的JDBC程序开发 (2) 淮海工学院计算机科学系 实验报告书 课程名:__ Java___________ 题目:_基于图形用户界面的JDBC程序开发 班级:__ ___________ 学号:__ __________ 姓名:__ __________ _ 一、实验目的 熟练运用GUI标准组件和布局管理器,正确合理地利用常用AWT和Swing组件进行

图形界面的设计;理解Java的事件处理机制,正确运用Java的事件处理机制及事件委托模型编写图形界面组件的事件处理程序;理解Java多线程机制,掌握线程使用方法。 理解JDBC的数据库访问编程原理,正确利用JDBC技术编写以数据库应用为核心的软件系统,并在设计中灵活运用之前所学的Java语言面向对象的编程技术。 二、实验环境 操作系统:windows 2000 或 Window XP 集成开发环境:JDK1.6及以上版本 三、实验学时 2学时,必做实验。 四、实验内容 (1)进一步熟悉JavaGUI标准组件和布局管理器、正确合理地利用常用AWT和Swing组件进行图形界面的设计;理解Java的事件处理机制,正确运用Java 的事件处理机制及事件委托模型编写图形界面组件的事件处理程序;实践程 序调试方法、纠错能力及编程规范性等;理解JDBC的数据库访问编程原理, 正确利用JDBC技术编写以各种数据库应用; (2)按以下各题目具体要求调试或编写相关算法程序 五、实验步骤与结果 1 请按照以下功能要求编写并调试相关程序 (1) 请定义一个抽象的“科学图书”类,其中包含1个公共的抽象方法:图书介绍;1个属性为:图书类别 (字符串类型); (2) 定义一个“计算机图书”子类(继承于“科学图书”类),其中包括2个域:出版社、定价;2个构造方法:一个为无参构造方法,在该无参构造方法中将“图书类别”设置为“计算机图书”,一个带2个参数(出版社、定价);不少于2个成员方法:分别用来查看出版社、修改定价,图书介绍文字可自编,并编写输出计算机图书全部信息的toString()方法。 (3) 编写一个图形用户界面,用来测试能否正确创建计算机图书类的对象、能否正常调用其方法,参考界面如下。必须实现的基本功能是: 1)单击图中的“新增计算机图书”按钮,则可显示出新增的计算机图书信息(显示信息的控件不限,用文本域、列表框、表格均可),要求添加的计算机图书不少于2本,如下图所示:

oracle设计实验报告材料

课程设计 课程题目:ORACLE应用系统设计设计题目:音像店信息管理系统 专业:计算机科学与技术 班级:计131 组员:李霆桑珠扎西虞洲 学号: 130761 130767 130762 日期: 2016-03-04 信息工程学院计算机科学与技术

目录 一.课程目的………………………………………………………. 二.题目要求……………………………………………………… 三.日期安排………………………………………………………. 四.组内分工……………………………………………………… 五.实验条件......................................................... ........................... 六.实验内容......................................................... ........................... (1)第一部分:Oracle管理技术……………………………………… 1.数据库管理…………………………………………………….. 2.角色和用户管理………………………………………………... 3.表和视图管理………………………………………………….. 4.索引和序列管理………………………………………………... 5.PL/SQL编程…………………………………………………… 6.使用游标、存储过程和触发器………………………………… 7.表空间管理……………………………………………………… 8.文件管理………………………………………………………… (2)第二部分:Oracle开发技术……………………………………….. ①数据库设计………………………………………………………………… ②界面设计.................................................... ③结果测试…………………………………………………………………… 七.问题及解决…………………………………………………….. 八.总结...............................................

Web界面设计实验报告

实验报告 课程名称:Web语言及XML程序设计实验项目:Web网页设计及XML编程专业班级: 姓名:学号: 实验室号:实验组号: 实验时间:批阅时间: 指导教师:成绩:

沈阳工业大学实验报告 题目:xx大学学生信息管理系统 于光亚负责:WEB网页界面设计 专业班级:学号:姓名: 实验名称: 附件A 沈阳工业大学web实验报告 ——xx大学学生信息管理系统 实验步骤或程序: 1.绪论:这次课程设计所制作的网站中分为五个板块,教师登陆、教师注册、学生成绩、学生信息管理、学生注册,通过这个网站,用户可以访问XX大学学生信息,及特权用那户对网页部分信息的管理。但网站有些简单,功能也不全面,功能实现有限。 2.布局介绍:网站下分为五个板块,分别为教师登陆、教师注册、学生成绩、学生信息管理、学生注册。整体结构如下

3.各页面设计: 3.1主页 预览: 功能实现:主页简单明了,突出登陆界面,网页功能及主意事项,插入图片动画增强美观,以上功能均以代码实现,均可根据要求做出调整。 3.2教师注册页: 预览:

功能实现:在主页点击教师注册,进入本页,实现简单的注册、提交功能,界面设计突出功能,实用性为主。 3.3学生注册页 预览:

功能实现:在主页点击学生注册,进入本页,罗列学生注册信息,同样实现简单的注册、提交功能,界面设计突出功能,实用性为主。 3.4学生成绩页 预览: 功能实现:通过主页登录,可进入学生成绩页面,实现通过学号、班级的输入完成学生成绩的搜索,教师用户还可对学生西成绩进行修改,本页还附带百度搜索、教师功能、学生功能等超链接,完善用户需求。 3.5学生信息管理页 预览:

嵌入式图形界面设计_综合实验报告

嵌入式图形界面设计报告 班级:计算机科学与技术15-2班 小组成员:刘航征、安宝、曲晗羽 杨祎涵、张振、李雪辰 2017年12月

一、前言 天气预报(测)或气象预报(测)是使用现代科学技术对未来某一地点地球大气层的状态进行预测。从史前人类就已经开始对天气进行预测来相应地安排其工作与生活(比如农业生产、军事行动等等)。今天的天气预报主要是使用收集大量的数据(气温、湿度、风向和风速、气压等等),然后使用目前对大气过程的认识(气象学)来确定未来空气变化。由于大气过程的混乱以及今天科学并没有最终透彻地了解大气过程,因此天气预报总是有一定误差的。 最传统的数据是在地面或海面上通过专业人员、爱好者、自动气象站或者浮标收集的气压、气温、风速、风向、湿度等数据。世界气象组织协调这些数据采集的时间,并制定标准。这些测量分每小时一次(METAR)或者每六小时一次(SYNOP)。 该项目为一款天气预报软件,基于Qt5开发,具有查询指定城市天气、显示当天天气状况以及未来四天天气大致状况的主要功能,次要功能为更换软件皮肤,显示当天感冒指数等功能。 软件预览图: 二、选用的技术基本说明 1、Qt JSON操作 QJsonDocument QJsonDocument 类用于读和写JSON 文档。 一个JSON 文档可以使用QJsonDocument::fromJson() 从基于文本的表示转化为QJsonDocument,toJson() 则可以反向转化为文本。解析器非常快且高效,并将JSON 转换为Qt 使用的二进制表示。 已解析文档的有效性,可以使用!isNull() 进行查询。 如果要查询一个JSON 文档是否包含一个数组或一个对象,使用isArray() 和isObject()。包含在文档中的数组或对象可以使用array() 或object() 检索,然后读取或操作。

图形用户界面的设计课案

人机交互基础教程 实验报告 实验题目:图形用户界面的设计 专业计算机科学与技术 学生姓名 班级学号 教师 指导单位计算机软件学院 日期

教师 评语教师签名: 年月日 成绩评定 备注

一、实验目的 (1)熟悉图形用户界面的设计原则 (2)利用一种设计工具完成图形化的用户界面设计 二、预备知识 图形用户界面又称为WIMP界面,由窗口(windows)、图标(icons)、菜单(menu)、指点设备(pointing device)四位一体,形成桌面(desktop) ,如图所示。 WIMP界面 用 户 手 眼 击键/指点 窗口、图标 菜单、文本 应用例程 图形用户界面是当前用户界面的主流,广泛应用于各档台式微机和图形工作站。图形用户界面的共同特点是以窗口管理系统为核心,使用键盘和鼠标器作为输入设备。窗口管理系统除了基于可重叠多窗口管理技术外,广泛采用的另一核心技术是事件驱动(event-driven)技术。 WIMP界面可看作是第二代人机界面,是基于图形方式的人机界面。在WIMP界面中,人被称为用户,人机通过对话进行工作。用户只能使用手这一种交互通道输入信息,通过视觉通道获取信息。在WIMP界面中,界面的输出可以为静态或动态的二维图形或图像等信息。

这种方式能同时输出不同种类的信息,用户也可以在几个工作环境中切换而不丢失几个工作之间的联系,通过菜单可以执行控制型和对话型任务。由于引入了图标、按钮和滚动条技术,大大减少键盘输入,提高了交互效率。基于鼠标和图形用户界面的交互技术极大地推动了计算机技术的普及。 (1)图形用户界面的三个重要思想 1)桌面隐喻(desktop metaphor) 指在用户界面中用人们熟悉的桌面上的图例清楚地表示计算机可以处理的能力。隐喻的表现方法:静态图标、动画、视频2)所见即所得(What You See Is What You Get,WYSIWYG) 显示的用户交互行为与应用程序最终产生的结果是一致的。 3)直接操纵(direct manipulation) 直接操纵是指可以把操作的对象、属性、关系显式地表示出来,用光笔、鼠标、触摸屏或数据手套等指点设备直接从屏幕上获取形象化命令与数据的过程。直接操纵的对象是命令、数据或是对数据的某种操作。 (2)设计图形用户界面的原则 1) 一般性原则:界面要具有一致性、常用操作要有快捷方式、提供简单的错误处理、对操作人员的重要操作要有信息反馈、操作可逆、设计良好的联机帮助、合理划分并高效地使用显示屏、保证信息显示方式与数据输入方式的协调一致 2) 颜色的使用:颜色是一种有效的强化手段,同时具有美学价

实验报告二用户界面与 Shell 命令

实验二用户界面与Shell 命令 实验环境:Linux 环境 实验目的: (1)掌握图形化用户界面和字符界面下使用 Shell 命令的方法。 (2)掌握 ls、cd 等 Shell 命令的功能。 (3)掌握重定向、管道、通配符、历史记录等的使用方法。 (4)掌握手工启动图形化用户界面的设置方法。 实验内容: 1.图形化用户界面下的 Shell 命令操作 操作要求1: 显示系统时间,并将系统时间修改为2011 年9 月17 日零点。 操作过程: (1)启动计算机,以超级用户身份登录图形化用户界面;用户名为root。 (2)依次单击顶部面板的「应用程序」菜单=>「附件」=>「终端」,打开桌面环境下的终端工具。 (3)输入命令“date”,显示系统的当前日期和时间。 (4)输入命令“date 0917********”,屏幕显示新修改的系统时间。在桌面环境的终端 结果: (1)输入命令“date”显示系统当前日期为:2015年4月20号星期一 18:16:12. (2)输入命令“date 0917********”修改系统的时间为2011年9月17号零点。 操作要求2: 切换为普通用户,查看 2011 年 9 月 17 日是星期几。 操作过程: (1)输入“su - stu”命令切换当前用户为普通用户 stu。

(2)输入命令“cal 2011”,屏幕上显示出 2011 年的日历, 结果: 由下图可以看出2011 年 9 月 17 日是星期天。 操作要求3:查看 ls 命令的-s 选项的帮助信息 操作过程: 方法一: (1)输入“man ls”命令,屏幕显示出手册页中 ls 命令相关帮助信息的第一页,介绍ls 命令的含义、语法结构以及-a、-A、-b 和-B 等选项的意义。 (2)使用 PgDn 键、PgUp 键以及上、下方向键找到-s 选项的说明信息。 (3)由此可知,ls 命令的-s 选项等同于--size 选项,以文件块为单位显示文件和目录的大小。 (4)(4)在屏幕上的“:”后输入“q”,退出 ls 命令的手册页帮助信息。 方法二: (1)输入命令“ls --help”,屏幕显示的帮助信息。 (2)拖动滚动条,找到-s 选项的说明信息,由此可知 ls 命令的-s 选项等同于--size 选项,以文件块为单位列出所有文件的大小。

VB实验报告7-用户界面设计

VB 程序设计实验报告 2020年06 月01 日 课程名称:VB程序设计实验名称:实验7-用户界面设计 一、实验目的 1.掌握下拉式菜单和弹出式菜单的设计方法 2.学会使用通用对话框控件进行编程 3.掌握设计自定义对话框的有关技术 4.掌握工具栏的设计技术 5.了解鼠标和键盘事件及其事件过程的编写 6.综合应用所学的知识,编制具有可视化界面的应用程序 二、实验内容

三、实验分析及设计 实验7-1 对话框是模态的,将窗体作为模态对话框显示应使用如下语句: Frmabout.shou vbmodal 实验7-2 实验7-3 假定max为最大字符的下标,标记最大字符的语句为 List1.list(max) = list1.list(max) & space(10)&”*” 实验7-4 弹出式菜单设置时需要设置为不可见 实验7-5 一个项目中可以有若干窗体,但name属性不能相同,所以需要讲窗体的名称修改后才能汇总 四、程序代码 实验7-1 Private Sub about_Click() frmAbout1.Show vbModal End Sub Private Sub FileMenu02_Click() End End Sub Private Sub FileMuen01_Click() Text1.Text = "" End Sub Private Sub fontcu_Click() Text1.FontBold = True

Private Sub fontsize12_Click() Text1.FontSize = 12 End Sub Private Sub fontsize8_Click() Text1.FontSize = 8 End Sub Private Sub fontxie_Click() Text1.FontItalic = True End Sub 实验7-2 Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button) Select Case Button.Index Case 1 Call cuti_click Case 2 Call xieti_click End Select Label1.FontBold = True End Sub Private Sub cuti_click() Label1.FontBold = True End Sub Private Sub xieti_click() Label1.FontItalic = True End Sub 实验7-3 Dim a(15) As String Private Sub F2_Click() List1.Clear Erase a Randomize For i = 0 To 14 a(i) = Int(Rnd * (90 - 65 + 1) + 65) List1.AddItem Chr(a(i)) Next i End Sub Private Sub F3_Click() Dim large As Integer, num As Integer large = 0

相关主题
文本预览
相关文档 最新文档