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

实验八基于图形用户界面的JDBC程序开发
实验八基于图形用户界面的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本,如下图所示:

图1 运行截图——新增计算机图书

2)单击图中的“修改定价”按钮,可修改其中某本图书的定价,并在下方显示出修改后的结果

请按照实验内容具体要求完成相关设计与编程,实验步骤;

(1) 程序代码

import java.awt.*;

import java.awt.event.*;

class CM extends Frame implements ActionListener

{

CMBook start; //当做链表的开头

Panel 操作栏;

Label 出版社,定价,显示;

TextField 出版社栏,定价栏;

Button 新增计算机图书,修改定价;

TextArea 显示内容;

CM()

{

super("计算机图书类操作图形用户界面");

start=null;

显示=new Label();

显示内容=new TextArea();

显示内容.setSize(80,50);

新增计算机图书=new Button("新增计算机图书");

修改定价=new Button("修改定价");

新增计算机图书.addActionListener(this);

修改定价.addActionListener(this);

操作栏=new Panel();

操作栏.setSize(60,5);

出版社=new Label("出版社");

定价=new Label("定价");

出版社栏=new TextField(10);

定价栏=new TextField(5);

操作栏.add(出版社);操作栏.add(出版社栏);

操作栏.add(定价);操作栏.add(定价栏);

操作栏.add(新增计算机图书);操作栏.add(修改定价);

setTitle("计算机图书类操作的图形界面");

add(操作栏,BorderLayout.NORTH);

add(显示内容,BorderLayout.CENTER);

add(显示,BorderLayout.SOUTH);

setBounds(300,300,500,500);

setVisible(true);

validate();

}

public void actionPerformed(ActionEvent e)

{

if(e.getSource()==新增计算机图书)

{

String one=出版社栏.getText();

String two=定价栏.getText();

if(Integer.parseInt(two)<0)

{

显示.setText("价格不能为负数");

}

else

{

CMBook mid=new CMBook(one,Integer.parseInt(two));

mid.next=start;

start=mid;

显示内容.append(mid.toString());

}

}

else if(e.getSource()==修改定价)

{

int pricenew;

CMBook point;

String one,two,three;

one=出版社栏.getText();

two=定价栏.getText();

point=start;

while(true)

{

if(point==null)

{

显示.setText("查找不到该类别");

break;

}

if(point.出版社.equals(one))

{

point.定价=Integer.parseInt(two);

显示内容.append("价格修改完成"+point.toString());

break;

}

else

{

point=point.next;

}

}

}

}

}

abstract class Book

{

String 图书类别;

abstract String 图书介绍();

}

class CMBook extends Book

{

CMBook next; //额外增加一个引用String 出版社;

int 定价;

String 图书介绍()

{

return "书籍是人类进步的阶梯";

}

CMBook()

{

图书类别="计算机图书";

next=null;

}

CMBook(String 出版社,int 定价)

{

this.出版社=出版社;

this.定价=定价;

图书类别="计算机图书";

next=null;

}

String 查看出版社()

{

return 出版社;

}

void 修改定价(int 定价)

{

this.定价=定价;

}

public String toString()

{

return ("类别"+图书类别+"|出版社"+出版社+"|定价"+定价+"图书介绍|书籍是人类进步的阶梯\n");

}

}

public class Bookcdx

{

public static void main(String args[])

{

new CM();

}

}

(2) 相应运行结果

2、(选做题) 改正以下程序中出现的错误,并进行注释说明import java.applet.applet;

import java.awt.*;

public class test extends Applet

{

Label prompt1,prompt2;

TextField inputNo1,inputName1

Department MyDept1;

void init()

{ prompt1=new Label("请输入部门的编号:");

inputNo1=new TextField(5);

prompt2=new Label("请输入部门的名称:");

inputName1=new TextField(5);

add(prompt1);

add(inputNo1);

add(prompt2);

add(inputName1);

MyDept1=new Department ( );

inputNo1.addAction(this);

}

public paint(graphic g)

{

g.drawstring(MyDept1.toString(),20,100);

}

public void action(ActionEvent e)

{

if(e.getSource==inputNo1)

MyDept1.setDeptNo(inputNo1.getText());

else if(e.getSource()=inputName1)

MyDept1.m_DeptName=new String(inputName1.getText()); repaint();

return True;

}

}

final class Department

{

int m_DeptNo=10;

static m_DeptName;

String getDeptNo()

{

return m_DeptNo;

}

setDeptNo(int newno)

{

if(newno>0)

{

m_DeptNo=newno;

return true;

}

else

return false;

}

public String toString()

{

return("部门编号:"+getDeptNo()+"; "

+"部门名称:" +m_DeptName+"; ");

}

}

改正:

import java.applet.*;// 引入包

import java.awt.*; // 引入包

import java.awt.event.*;//分号

public class Test extends Applet implements ActionListener // extend错误

{

Label prompt1,prompt2;

TextField inputNo1,inputName1;//分号

Department MyDept1;

public void init() //少public

{ prompt1=new Label("请输入部门的编号:");

inputNo1=new TextField(5);

prompt2=new Label("请输入部门的名称:");

inputName1=new TextField(5);

add(prompt1);

add(inputNo1);

add(prompt2);

add(inputName1);//添加inputName1

MyDept1=new Department ( );

inputNo1.addActionListener(this);//添加this

inputName1.addActionListener(this);

this.setVisible(true);//显示输出

}

public void paint(Graphics g)// 单词错误Graphics

{

g.drawString(MyDept1.toString(),20,100); //drawString

}

public void actionPerformed(ActionEvent e)//action 拼写错误

{

if(e.getSource()==inputNo1)

MyDept1.setDeptNo(Integer.parseInt(inputNo1.getText())); //类型转换成字符

else if(e.getSource()==inputName1)//判断是相等用==

MyDept1.m_DeptName=new String(inputName1.getText());

//repaint();

//return True; //返回为空不需要

}

}

class Department //final不需要

{

int m_DeptNo=10; //分号

String m_DeptName; //类型没有给出

String getDeptNo() //S

{

return Integer.toString(m_DeptNo); //类型

}

boolean setDeptNo(int newno)//返回类型没有给出

{

if(newno>0)

{

m_DeptNo=newno;

return true;

}

else

return false;

}

public String toString() //S

{

return("部门编号:"+getDeptNo()+"; "

+"部门名称:" +m_DeptName+"; ");

}

}

3、(选做题) 请按照以下功能要求编写并调试相关程序

实验内容:(1) 熟练Tomcat安装与配置;(2) 熟练servlet部署、三种开发方式;(3) 练习JDBC连接;(4) 练习基于JDBC与Servlet的数据库查询、更新(添加、删除、修改)

(一)实验步骤:熟悉Tomcat安装,servlet部署步骤;

(1) 依次创建WEB-INF、classes、lib、web.xml等目录结构

(2) 完成相关Servlet程序并调试

(二)以继承HttpServlet方式开发Servlet,完成基于Servlet的JDBC连接(数据库选择

SQLServer2000以上)和数据查询应用。

(1) 选择SQLServer2000数据库,建立Test数据库和相关users表(字段

userid,username,userpass),用户名111,密码111;

(2) 以继承HttpServlet方式开发Servlet,完成以下数据库查询显示代码并调试相关结

果。

package js.hit;

import javax.servlet.http.*;

import java.sql.*;

import java.io.*;

public class DataSel extends HttpServlet{

public void doGet(HttpServletRequest req,HttpServletResponse res){

try {

res.setContentType("text/html;charset=gbk");

PrintWriter out = res.getWriter();

String url = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName = test";

String user = "111";

String password = "111";

String sqlsel = "select userid,username,userpass from users";

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

Connection cn = DriverManager.getConnection(url,user,password);

Statement sm = cn.createStatement();

ResultSet rs = sm.executeQuery(sqlsel);

while(rs.next())

{

out.println(rs.getString(1)+"");

out.println(rs.getString(2)+"");

out.println(rs.getString(3)+"");

out.println("
");

}

rs.close();

sm.close();

cn.close();

}

catch (Exception ex) {

}

}

public void doPost(HttpServletRequest req,HttpServletResponse res){

this.doGet(req,res);

}

}

(三)在上例数据库基础上,继续以继承HttpServlet方式开发另一个Servlet,完成基于Servlet的

数据更新应用,参考代码如下。

package js.hit;

import javax.servlet.http.*;

import java.io.*;

import java.sql.*;

public class DataUpd extends HttpServlet {

public void doGet(HttpServletRequest req,HttpServletResponse res){

try {

res.setContentType("text/html;charset =gbk");

PrintWriter out = res.getWriter();

String url = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName = test";

String user = "111";

String password = "111";

String sqlupd = "update users set userpass = '8' where userid = 3";

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver");

Connection cn = DriverManager.getConnection(url,user,password);

Statement sm = cn.createStatement();

sm.executeUpdate(sqlupd);

sm.close();

cn.close();

}

catch (Exception ex) {

}

}

public void doPost(HttpServletRequest req,HttpServletResponse res){

this.doGet(req,res);

}

}

六、实验分析与体会

(1) 请简述使用JDBC技术编写数据库应用关键步骤

1、装库,建库;

2、找到相应的数据库连接包,sql、oracle都有对应的jar包;

2、写一个类,结合对应的jar包来连接数据库;

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)用户管理

实验三 图形用户界面设计(汽院含问题详解)

实验三图形用户界面设计 实验目的 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(网格布局管理器):规则的矩阵

第10章_图形用户界面(GUI)制作

第十章 图形用户界面(GUI )制作 10.1 入门 【例10.1-1】对于传递函数为121 2++=s s G ζ的归一化二阶系统,制作一个能绘制该系统 单位阶跃响应的图形用户界面。本例演示:(A )图形界面的大致生成过程;(B )静态文本和编辑框的生成;(C )坐标网格控制键的形成;(D )如何使用该界面。 (1)产生图形窗和轴位框:如图10.1-1所示。 clf reset H=axes('unit','normalized','position',[0,0,1,1],'visible','off'); set(gcf,'currentaxes',H); str='\fontname{隶书}归一化二阶系统的阶跃响应曲线'; text(0.12,0.93,str,'fontsize',13); h_fig=get(H,'parent'); set(h_fig,'unit','normalized','position',[0.1,0.2,0.7,0.4]); h_axes=axes('parent',h_fig,... 'unit','normalized','position',[0.1,0.15,0.55,0.7],... 'xlim',[0 15],'ylim',[0 1.8],'fontsize',8); 图 10.1-1 产生坐标轴 (2)在坐标框右侧生成作解释用的“静态文本”和可接收输入的“编辑框”:如图10.1-2所示。 h_text=uicontrol(h_fig,'style','text',... 'unit','normalized','position',[0.67,0.73,0.25,0.14],... 'horizontal','left','string',{'输入阻尼比系数','zeta ='}); h_edit=uicontrol(h_fig,'style','edit',... 'unit','normalized','position',[0.67,0.59,0.25,0.14],... 'horizontal','left',... 'callback',[... 'z=str2num(get(gcbo,''string''));',... 't=0:0.1:15;',...

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

实验八 图形用户界面设计

实验八图形用户界面(GUI)设计 (说明:本次实验在4学时内独立完成) 一、实验目的 1. 熟悉各种控件和界面菜单的制作。 2. 学会编写控件对象的回调程序(callback函数)。 3. 熟练使用GUI开发工具GUIDE设计用户界面。 二、实验预备知识 图形用户界面(Graphical User Interface,简称GUI) 是指由窗口、光标、按键、菜单、文字说明等对象构成的一个人与计算机的交互界面。用户通过一定的方法(如鼠标或键盘)选择、激活这些图形对象,使计算机产生某种动作或变化,比如实现计算、绘图等。GUI 的最重要组成是用户菜单(uimenu)和用户控件(uicontrol)。关于界面菜单,可以参考课件相关部分的介绍,这里主要介绍控件的类型、属性和制作方法。 1.用户控件的类型 控件是事件响应的图形对象。当某一事件发生时,应用程序会做出响应并执行某些预定的功能子程序(即回调函数Callback)。MATLAB中有10种不同类型的控件(下图): ①单功能按钮(Push Button);②单选按钮(Radio Button);③双位按钮(Toggle Button); ④复选框(Check Box);⑤列表框(List Box);⑥弹出框(Popup Menu);⑦静态文本框 (Static Text);⑧可编辑文本框(Edit Text);⑨滑标或滚动条(Slider);⑩框架(Frame)。这些控件大致可分为两种,一种为动作控件,鼠标点击这些控件时会产生 相应的响应;一种为静态控件,是不产生响应的控件,如静态文本框等。 表1给出了各种控件的描述。 2.用户控件的属性 每种控件都有一些可以设置的属性参数,用于表现控件的外形、功能 及效果。属性由两部分组成:属性名和属性值,它们必须是成对出现的。 用户可以在创建控件对象时,设定其属性值,未指定时将使用系统缺省值。 下面介绍部分较常用的控件属性: ●Tag取值为字符串,定义了控件的标识(标签),在任何程序中都可 以通过这个标识控制该控件对象。 ●Style表明控件对象的类型,取值为表1所列10种当中之一。 ●String定义控件对象的标题或选项内容(即控件上用户想要显示的内容),取值为字符 串或数组。 ●Units单位属性,取值可以是pixels, normalized(归一化), inches, centimeters或 points。GUI设计时经常使用归一化单位。

用户界面实验报告

院系:计算机科学学院专业:计算机科学与技术年级: 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.

计算机图形学实验报告

计算机图形学 实验报告 姓名:谢云飞 学号: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;

Visual FoxPro 程序设计实验报告

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

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

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

第七章 图形用户界面设计-实验题目

第七章图形用户界面设计--实验题目 一、实验目的 1. 掌握GUI编程的基本概念。 2. 掌握基于Swing和AWT的图形用户界面的编程原理。 3. 理解容器和组件的概念,初步掌握事件编程的基本技巧。 4. 掌握Swing包中的基本组件和基本事件类。 5. 掌握常用布局管理器的使用。 二、实验内容 1.编写一个能够转换华氏温度和摄氏温度的程序。在“摄氏温度”文本域输入一个值并点击华氏按钮(两个按钮—摄氏按钮、华氏按钮),在华氏文本域显示相应的华氏温度。 反之,在“华氏文温度”文本域输入一个值,点击摄氏按钮,在摄氏文本域中显示相应的摄氏温度。 2.编写程序,使得当按下鼠标时显示鼠标的位置。 3.编写程序,界面上包括一个标签、一个文本框和一个按钮。当单击按钮时,程序把文本框中的内容复制到标签中。 4.编写满足下列要求的程序: (1)创建1个框架并将其内容窗格布局管理器设置为BorderLayout。 (2)创建2个面板并把它们添加到框架。 (3)每个面板包含3个按钮,面板使用BorderLayout布局管理器。 (4)单击按钮时,在控制台显示信息指明按钮被单击。 5.编写一个应用程序,实现如下图所示的图形界面.要求单击关闭按钮能够关闭窗口并结束程序运行。 6.编写一个应用程序,实现如下图所示的图形界面,要求单击按钮将窗口的背景颜色设置为相应的颜色。设置颜色可以调用容器的setBackground(Color c)方法,参数Color 可以使用java awt.Color类的常量,如Color.RED等。 7.编写一个应用程序,其外观是一个框架窗口,窗口中放置一个多行文本框,下方放置3个按钮,3个按钮名分别为“OK”、“Cancel”、“Exit”,鼠标单击前两个按钮,在文本框中显示按钮上文字,单击“Exit”按钮,关闭并退出程序。 8.编写一个应用程序,实现如下图所示的图形界面。要求在文本框中输入有关信息,单

Web系统测试实验报告

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

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

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)

实验八基于图形用户界面的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学生信息管理页 预览:

实验报告二用户界面与 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 选项,以文件块为单位列出所有文件的大小。

Java图形用户界面实验报告

西安邮电大学 (计算机学院) 课内实验报告 实验名称:图形用户界面 专业名称:计算机科学与技术 班级:计科1405班 学生姓名:高宏伟 学号:04141152 指导教师:刘霞林 实验日期:2016.11.24

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

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

相关文档
最新文档