实验6-图形化用户界面编程

实验6-图形化用户界面编程
实验6-图形化用户界面编程

实验6 图形用户界面编程

6.1 实验目的

(1) 掌握图形用户界面的布局设置;

(2) 掌握事件驱动编程的特点,如何区分事件源。

(3) 掌握文本框、文本域、标签、按钮等部件的操作方法。

6.2 知识要点

6.2.1 awt包简介

(1)java.awt包可用于编写Java Application和Applet的图形界面。

(2) AWT组件层次关系见图11-1,所有的GUI标准组件都是AWT包中的根类

Component(构件)类的子类。

6.2.2 容器、布局和部件

(1)容器

Container是Component的子类,具有构件的所有性质,并且能放置其他容器和构件。

●一个容器能容纳若干构件;

●调用容器对象的add方法将构件加入到容器中;

●窗体(Window)容器在不同的操作平台上显示不同的外观。

●面板(Panel)容器是没有标题和边框的透明容器,不能单独存在,必须加入窗体

等其他容器中使用。

(2)各类GUI部件的特点

●按钮(Button):单击产生ActionEvent事件

●复选框(Checkbox):选择时产生ItemEvent事件

●复选框组(CheckboxGroup):只能选一,单选;

●下拉列表(Choice):只能选1项;

●列表(List):可以选多项;

●文本框(TextField):只能显示一行,按回车触发ActionEvent;

●文本域(TextArea):显示多行文本。

●画布(Canvas):只能绘图,处理鼠标和键盘事件。

●窗体(Frame):顶级容器,关闭时触发WindowEvent;

●面板(Panel): 可进行嵌套布局的容器,面板作为一个部件加入到窗体容器中,面

板作为容器又可以放其他面板和部件。

●对话框(Dialog):包括模式和非模式两类,依赖其他窗体。

●文件对话框(FileDialog):用于打开和关闭文件。

●菜单(Menu)、菜单条(MenuBar)和菜单项(MenuItem):只能对Frame创建菜

单,菜单条中添加菜单,菜单中可以添加菜单项或子菜单。

(3)布局

Java通过布局管理器对所有构件进行管理,以支持跨平台的动态布局效果。常见布局管理器有5种,见表11-1所示。

表11-1 常见布局管理器及特点

6.2.3 事件处理

(1) 事件处理机制

●涉及对象有事件源、事件、事件处理者(监听者)。事件源是发生事件的对象;事件对象是提供事件相关信息的对象;事件处理者则是消化事件,完成特定处理的对象。

●Java采用委托(授权)事件处理机制;事件源对其可能发生的事件分别授权不同的事件处理者处理;通过如下命令注册监听者:

addXXXListener(XXXListener a);

其中,XXX与相应事件类型相关,例如:按钮点击动作事件对应标记为“Action”.

要注销监听者使用removeXXXListener(XXXListener a);

●事件处理者必须实现某类事件相对应的接口,只有符合接口规范的对象才能作为事件处理者,通过编写相应方法实现事件的处理。

例如,ActionListener接口中定义了如下方法用来处理事件。

public void actionPerformed(ActionEvent e);

●Java为每类事件提供了一个相应的接口。

(2) 事件与事件处理

●java.util.EventObject是所有事件类的父类;java.awt.AWTEvent是所有AWT事件类的父类,其包括低级事件和基于语义的高级事件。

●XXXEvent对应的事件处理接口通常为XXXListener,但鼠标事件(MouseEvent)对应的事件处理接口有两个,一个是MouseListener,另一个是MouseMotionListener,它们分别用来处理鼠标的移动(含拖动)与鼠标的点击动作。各类接口的事件处理方法见表11-2。

表11-2 AWT事件接口及处理方法

●事件适配器

Java中为那些具有多个方法的监听者接口提供了事件适配器类,这个类通常命名为XxxAdapter,在该类中以空方法体实现了相应接口的所有方法,程序员设计可通过继承适配器类来编写监听者类,在类中只需给出关心的方法,从而减轻工作量。

●在事件处理代码中区分事件源

在事件处理代码中可通过相应的方法得到事件源对象或与事件源相关的信息,见表

11-3,通过这些信息可区分事件源。

表11-3 在事件处理代码中区分事件源

6.3 样例程序

样例1:在应用程序窗体中安排1个文本框,一个标签。在文本框输入一个数字(0-9),按回车键,在标签处显示对应的英文单词。 0---zero,1---one,....

【参考程序】

import java.awt.*;

import java.awt.event.*;

public class myFrame extends Frame implements ActionListener {

Label res;

TextField my;

String

word[]={"zero","one","two","three","four","five","six","seven","eight",

"nine","ten"};

public myFrame (){

my =new TextField(20);

res=new Label(" 英文单词 ");

setLayout(new FlowLayout());

add(my); add(res);

my.addActionListener(this);

}

public void actionPerformed(ActionEvent e) {

String s=my.getText();

int n=Integer.parseInt(s);

res.setText( word[n] );

}

public static void main(String args[]) {

Frame my= new myFrame();

my.setSize(300,300);

my.setVisible(true);

}

【编程技巧】

(1) 从数组中单词与下标位置之间的对应关系认识翻译目标。

(2) 事件注册处理过程。

(3) 如何读取文本框数据并转化为整数和设置标签内容。

【自己练习】以上程序执行时要求用户输入一个0到9之间的数字,但由于没有提示,用户可能输入数据错误,从而产生程序运行错误,改进应用界面,给用户输入提示。

样例2:在应用程序窗体中安排两个文本框分别用来输入两个整数,两个按钮分别为“+”,“*”,一个结果标签。点击按纽“+”将两文本框的数据做加法运算;点击按钮“*”做乘法运算,将结果显示在标签中。

【参考程序】

import java.awt.*;

import java.awt.event.*;

public class myFrame extends Frame implements ActionListener {

Label res;

TextField f1,f2;

public myFrame (){

f1 =new TextField(20);

f2 =new TextField(20);

Button b1=new Button("+");

Button b2=new Button("*");

res=new Label(" 运算结果 ");

setLayout(new GridLayout(3,2));

add(f1); add(f2);

add(b1); add(b2); add(res);

b1.addActionListener(this);

b2.addActionListener(this);

public void actionPerformed(ActionEvent e) {

int x1=Integer.parseInt(f1.getText());

int x2=Integer.parseInt(f2.getText());

if (e.getActionCommand().equals("+")) //区分用户点击的是哪个按钮

res.setText(""+(x1+x2));

else

res.setText(""+(x1*x2));

}

public static void main(String args[]) {

Frame my= new myFrame();

my.setSize(200,200);

my.setVisible(true);

}

}

【说明】本例在一个事件处理程序中有来自两个事件源的事件,因此在处理时要区分处理,区分命令按钮有两种办法:一种是通过按钮的命令名(默认是按钮上的文本),比较时通过字符串比较;另一种是通过事件的getSource()方法得到事件源对象,但这次比较的是与对象引用变量进行比较。

【编程技巧】

(1) 在同一事件处理方法中如何区分事件源;

(2) 将多个实例方法内要共享访问的部件对象定义为属性变量,如上面的标签和两个文本框。

【自己练习】利用匿名内嵌类为以上问题的每个事件源单独编写一段事件处理代码,这样在事件处理时不用区分事件源。

6.4 上机练习

基本题

1)编写一个用户登录身份验证的图形界面程序,界面要求如下。用户名和密码输入正确的话,鼠标点击sure按钮在文本框中显示welcome,否则显示error;如鼠标点击cancel按钮时,用户名和密码文本框都清空。(用户名为学生姓名,密码为

123456)

2)创建带有标签和文本域的窗体。当用户在文本域中输入其姓名后,显示欢迎用户使用 java 编程的消息。例如用户输入姓名 flyhorse ,则显示消息“你好, flyhorse, 欢迎你使用 java 编程!”,并能正常关闭窗口。

3)设有一批英文单词存放在一个数组中,编制一个图形界面程序浏览单词。在界面中安排一个标签显示单词,另有“上一个”、“下一个”两个按钮实现单词的前后翻动。

提高题

2)编写一个用户注册信息填写验证程序,注册信息包括用户名、密码、EMAIL地址、联系电话。要求验证联系电话中只能输入数字,EMAIL地址中需要包括“@”符号,密码域不少于6位。要求联系电话在输入过程中保证不能有非数字,而其他两个域在点击注册按钮时再进行数据检查。

3)实现一个简单计算器。支持+、-、*、/、% 运算。界面如下图所示。

6.5 思考题

1)一个部件在水平方向会改变大小,但垂直方向不变,则放到什么位置。

A.BorderLayout 布局的North或 South位置

B.FlowLayout 布局的第一个部件

C.BorderLayout 布局的East 或 West位置

D.BorderLayout 布局的Center位置

E.GridLayout布局中

2)以下AWT类中哪些实现部件的布局?

A.LayoutManager

B.GridBagLayout

C.ActionListener

D.WindowAdapter

E.FlowLayout

3)容器的add( Component comp ) 和add( String name, Component comp ) 方法在加入什么部件时将抛出IllegalArgumentException

A.Button B.List C.Window D.TextArea

E.包含这个容器的容器

4)设有以下程序:

import java.awt.*;

public class FlowAp extends Frame{

public static void main(String argv[]){

FlowAp fa=new FlowAp();

fa.setSize(400,300);

fa.setVisible(true);

}

FlowAp(){

add(new Button("One"));

add(new Button("Two"));

add(new Button("Three"));

add(new Button("Four"));

}

}

以下哪个描绘了应用的外观?

A.窗体每边有4个标记为One 到 Four的按钮

B.从顶到底有安排有4个标记为One 到 Four的按钮

C.一个很大的标记为 Four的按钮在正中央

D.运行时指示没有设置布局管理器的错误

5) 如何设置当前的布局管理器

A.使用 setLayout 方法

B.一旦创建了部件,不能改变部件的布局管理器。

C.使用setLayoutManager 方法

D.使用updateLayout 方法

6) 以下代码运行后外观为?

import java.awt.*;

public class CompLay extends Frame{

public static void main(String argv[]){

CompLay cl = new CompLay();

}

CompLay(){

Panel p = new Panel();

p.setBackground(Color.pink);

p.add(new Button("One"));

p.add(new Button("Two"));

p.add(new Button("Three"));

add("South",p);

setLayout(new FlowLayout());

setSize(300,300);

setVisible(true);

}

}

A.按钮按从左向右的次序出现在窗体的底部

B.按钮按从左向右的次序出现在窗体的顶部

C.按钮将不显示

D.只有一个按钮显示占满整个窗体

7) 以下程序调试结果为

//演示事件处理

import java.awt.*;

import java.awt.event.*;

public class MyWc extends Frame implements WindowListener{ public static void main(String argv[]){

MyWc mwc = new MyWc();

}

public void windowClosing(WindowEvent we){

System.exit(0);

}

public void MyWc(){

setSize(300,300);

setVisible(true);

}

}

A.编译错误

B.创建的窗体会关闭掉

C.运行无输出

D.编译错误,import语句前不能有注释语句

8) 以下叙述正确的有?

A.如果一个部件注册多个监听者,事件只会被最后一个监听者处理。

B.如果一个部件注册多个监听者,事件将被所有监听者处理。

C.一个部件注册多个监听者将导致编译出错。

D.可以将一个部件已注册的监听者移去。

9) 以下哪个是正确的事件处理方法

A.mousePressed(MouseEvent e){}

B.MousePressed(MouseClick e){}

C.functionKey(KeyPress k){}

D.componentAdded(ContainerEvent e){}

10) 关于JDK 1.1的事件处理以下那条为真?

A.一个类可以实现多个监听者接口;

B.如果一个类实现一个监听者接口,它只要覆盖其用到的方法;

C.MouseMotionAdapter类的所有方法返回类型均为void。

11) 以下哪个是MenuItem类的方法?

A.setVisible( boolean b )

B.setEnabled( boolean b )

C.getSize()

D.setForeground( Color c )

E.setBackground( Color c )

12)以下类中,哪个类的子类不能直接创建实例?

A.Panel B.Dialog C.Container D.Frame

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

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

目录 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

用户界面实验报告

院系:计算机科学学院专业:计算机科学与技术年级: 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() 检索,然后读取或操作。

实验报告二用户界面与 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

实验报告四图像锐化处理

姓名:学号:班级: 实验日期:实验成绩: 一.实验目的 (1)学习如何用锐化处理技术来加强图像的目标边界和图像细节,对图像进行梯度算子、拉普拉斯算子、Sobel算子设计,使图 像的某些特征(如边缘、轮廓等)得以进一步的增强及突出。(2)分析模板大小对空域锐化滤波的影响,比较不同滤波器的处理效果,分析其优缺点。 二.实验原理 锐化处理的主要目的是突出灰度的过度部分,在空间域中,均值滤波类似于积分,那锐化滤波类似于微分,微分算子的响应程度与图像在用算子操作的这一点突变程度成正比,图像积分模糊了图像,同时起到了消除噪声的作用;图像微分增强边缘和其它突变(如噪声),而削弱灰度变换缓慢的区域,laplacian算子类似于二阶微分,强调的是图像灰度级剧烈变换的部分,而sobel算子类似于一阶微分,强调的是图像灰度级缓慢变化的部分。 三.实验内容及结果

(1)选择一副图像,分别使用拉普拉斯算子、sobel算子对图像进行锐化滤波,并观察滤波效果。 图 1 laplacian及sobel算子处理图像 (2)选择一副图像,构造一个中心系数为-24的5×5的类似于拉普拉斯模板对图像进行锐化,与上述拉普拉斯算子的结果相比,是否能得到更加清晰的结果? 图 2 不同大小laplacian模板处理原图及二值图 四.结果分析

(1)观察图一,可以发现对原图进行sobel算子运算后,原图阶梯的边缘细节被突显出来了,而每个阶梯灰度级保持不变的背景则没了,全变黑了,而对原图进行laplacian算子运算后,边缘部分则只剩下些杂乱无章的点了,基本是在sobel算子运算过后筛选出来的缓慢突变边缘上的一些突变更快的点。如果把sobel算子比作是一阶微分就不难理解它是对原图的缓慢边缘变化部分,而把laplacian算子比作是二阶微分的话,就是原图的剧烈突变部分,由于原图像的阶梯边缘在灰度级上是缓慢过度的,所以使用sobel算子边缘的突出效果更明显,而laplacian算子无论模板大小为多大,都不能清晰的显示出边缘。至于背景为什么会变黑是因为算子模板中有负因子,当计算的出来的值为负数时,自动标定其为0,也就是黑色。 (2)观察图二,可以发现对原图使用无论多大的laplacian模板,效果都很差,原因就是上述提到的原图像的边缘灰度级是缓慢变化的,对原图灰度级二值化处理,由于灰度值大小只有0和1两个值,阶梯边缘两边的值分别为0和1,这样边缘突变就成了一个单位的剧烈突变,所以3*3的laplacian算子效果就和上述的sobel算子效果相似,而当增加laplacian算子的大小到5*5时,边缘检测效果更加明显。正印证了微分算子的响应程度与图像在用算子操作的这一点突变程度成正比这一原理。

图形用户界面的设计课案

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

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

一、实验目的 (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) 颜色的使用:颜色是一种有效的强化手段,同时具有美学价

相关文档
最新文档