当前位置:文档之家› 实验3 非标准控件的使用

实验3 非标准控件的使用

实验3 非标准控件的使用
实验3 非标准控件的使用

实验三非标准控件的使用

一、实验目的

1、了解非标准控件的使用过程;

2、了解非标准控件的注册方法;

3、掌握对非控件的控制和事件响应编程的一般方法。

二、实验要求

1、使用Microsoft Forms 2.0组中的非标准控件,选择其中一个,掌握使用方法。

如Microsoft Forms 2.0 CommandButton 控件,要求在Button上是位图显示,点击鼠标左键,Button的显示在两个位图之间切换。

2、msdxm.ocx 是播放AVI图像文件的控件。控件名称是ActiveMovieControlObject ,编写使用该控件实现在对话窗口上播放AVI视频的程序(要求:AVI的文件名可选择,用CFileDialog Class实现)。

3、掌握MsFlexGrid 控件的使用方法,MsFlexGrid 是用于显示文件及计算结果的控件。(MsFlexGrid 控件全称:Microsoft FlexGrid Control version 6.0)

要求:在对话窗口显示数据

打开一数据文件,文件格式如下:

张三,95,77,66,55

李四,84,99,78,67

……

在打开文件后,数据文件内容在控件上显示。

对其中一些内容修改后,再保存到另一个文件中(CFileDialog)。

三、实验过程

1、添加控件

对于一个已注册的ActiveX控件,必须在每个项目中安装该控件。方法是选择Project->Add To Project->Components And Controls,再选择Registered ActiveX Controls,如下图所示:

这里会列出系统中当前已经注册的所有ActiveX控件,找到所需控件后选中,点击Insert,ClassWizard就会产生一个CWnd的派生类,点击OK即可。

一个尚未注册的ActiveX控件,是不会出现在上图的文件列表中的。利用系统提供的注册软件regsvr32可以进行注册。如需注册播放器控件msdxm.ocx,在命令行提示符下键入:

regsvr32 msdxm.ocx

该命令有些其它选择:/u /s /n /I

如在注册表中去掉已注册的控件,用/u,在命令行提示符下键入:

regsvr32 /u msdxm.ocx

2、具体步骤

2.1 CommandButton对话框

首先创建一个单文档工程(也可分别创建3个基于对话框的工程)。

(1)添加测试菜单,设置图像按钮菜单的属性,见下图:

如下图添加加速健Ctrl+F2:

为项目新建一个对话框,利用ClassWizard创建对话框的生成类,命名为CButtonDlg。在此对话框中添加控件Microsoft Forms 2.0 CommandButton。(2)为菜单添加command消息函数

如下图,在Class name一栏选择视图类,菜单的ID名称ID_BUTTON,COMMAND消息,然后点击添加消息函数:

编辑消息函数:

void CActivexView::OnButton()

{

// TODO: Add your command handler code here

CButtonDlg dlg;

dlg.DoModal();

}

添加对话框类头文件:#include "ButtonDlg.h"

(3)访问命令按钮

在对话框类CButtonDlg中,为命令按钮添加成员变量m_commandButton,用来改变控件的设置。ActiveX控件中有一通用成员函数SetPicture(),利用它可以设置ActiveX控件显示的位图;然后在工程资源中编辑两幅位图以备使用,其ID为IDB_RED_BITMAP及IDB_BLUE_BITMAP,注意:绘制图片不要在满幅图涂上单色。

首先添加头文件:#include "afxctl.h",就可以用类CPictureHolder。CPictureHolder 类的设计目的是实现ActiveX控件的Picture属性(可由SetPicture函数实现),它可以将一个图像等控件的名称转换成控件指针dispatch pointer,帮助SetPicture 函数实现设置。

编写按钮的消息函数如下:

bool bChange;

void CButtonDlg::OnClickCommandbutton1()

{

// TODO: Add your control notification handler code here

CPictureHolder pictholder;

if (!bChange)

{

pictholder.CreateFromBitmap(IDB_BLUE_BITMAP); //从ID到LPDISPATCH的转换

m_commandButton.SetPicture(pictholder.GetPictureDispatch());//利用ActiveX通用的SetPicture来设置CommandButton的位图

}

else

{

pictholder.CreateFromBitmap(IDB_RED_BITMAP);

m_commandButton.SetPicture(pictholder.GetPictureDispatch());

}

bChange = !bChange; //换另一位图

}

2.2ActiveMovieControl对话框

1.注册控件:在命令行运行regsvr32 msdxm.ocx。

2.为项目添加控件ActiveMovieControl Object。

3.添加对话框,生成对应类。放入该控件。对话框如下图所示:

同样为ActiveMovieControl控件添加成员变量m_ActiveMoive,使用CFileDialog来选择需要打开的文件,通过m_ActiveMovie.SetFileName()及m_ActiveMovie.Run()播放选择的文件。

添加“打开”按钮的click消息函数,编辑代码如下:

void CMy32Dlg::OnButton1()

{

// TODO: Add your control notification handler code here

char szFileFilter[]=

"全部支持类型|*.mp3;*.wma;*dat;*.wav;*.avi;*mid;*.mpeg|"

"Mp3 File(*.mp3)|*.mp3|"

"Wma File(*.wma)|*.wma|"

"Video File(*.dat)|*.dat|"

"Wave File(*.wav)|*.wav|"

"AVI File(*.avi)|*.avi|"

"Mid File(*.mid;*,rmi)|*.mid;*.rmi|"

"MPEG File(*.mpeg)|*.mpeg|"

"All File(*.*)|*.*||";

CFileDialog

dlg(TRUE,NULL,NULL,OFN_HIDEREADONLY,szFileFilter); if(dlg.DoModal()==IDOK)

{

CString PathName=dlg.GetPathName();

PathName.MakeUpper();

m_movie.SetFileName(PathName);

} //获取播放文件信息

else return;

m_movie.Run(); //播放文件

SetTimer(0,20,NULL); //设置定时器

}

2.3 MsFlexGrid对话框

对话框入下图所示:

为MsFlexGrid添加成员变量m_FlexGridData_Ctrl,使用CFileDialog 来选择需要打开或保存的数据文件(此处为文本文件)。

需要用到的MsFlexGrid成员函数如下:

m_FlexGridData_Ctrl.SetCol(int Col); //选择行号

m_FlexGridData_Ctrl.SetRow(int Row); //选择列号

m_FlexGridData_Ctrl.SetText(CString Text); //设置Row 行,Col列的内容

m_FlexGridData_Ctrl.SetRows(int Rows); //设置总行数

m_FlexGridData_Ctrl.SetCols(int Cols); //设置总列数

m_FlexGridData_Ctrl.GetText(); //得到当前内容读取数据文件内容时可使用CFile类,用到的成员函数有:

CFile::Open(LPCTSTR lpszFileName,UINT nOpenFlags, CFileException*pError=NULL) //打开文件CFile::Write( const void*lpBuf,UINT nCount ); //写文件

通过Cfile::Open()将数据文件内容装入CString类型变量内,然后通过各种字符串操作将数据内容写入对应的MsFlexGrid表格内。使用到的字符串操作函数如下:

CString::IsEmpty(); //变量是否为空

CString::Mid(int nFirst, int nCount); //获取nFirst开始之后nCount个字符的内容

CString::Find(LPCTSTR pstr, int nStart); //在字符串nStart 处开始查找pstr指定的内容

以上各函数的定义及使用方法在MSDN中均有详细说明。

编程步骤:

1.在ClassWizard中为控件添加成员变量:m_FlexGridData_Ctrl;

2.双击“打开”按钮,为其添加消息函数,编码如下:

void CGridDlg::OnButton1()

{

// TODO: Add your control notification handler code here

CFile myDataFile;

char DataBuf[1025];

memset(DataBuf, 0, 1025);

char szFileFilter[]=

"支持类型|*.txt|"

"文本文件(*.txt)|*.txt|"

"所有文件(*.*)|*.*||";

CString DataStr;

CString PathName;

CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONL Y,szFileFilter);

if(dlg.DoModal() == IDOK)

{

PathName = dlg.GetPathName();

PathName.MakeUpper();

}

else return;

myDataFile.Open(PathName, CFile::modeRead);

myDataFile.SeekToBegin();

myDataFile.Read(DataBuf,myDataFile.GetLength()); //将数据文件内容保存在字符串中

DataStr = DataBuf; //char*转换为cstring便于处理

myDataFile.Close();

int pos1 = 0, pos2 = 0; //字符串指针位置

int i = 0; //行号

int j = 0; //列号

int k;

char lpstrRow[100] = "1"; //编号

m_FlexGridData_Ctrl.SetCol(0);

m_FlexGridData_Ctrl.SetRow(0);

m_FlexGridData_Ctrl.SetText("编号");

m_FlexGridData_Ctrl.SetCol(1);

m_FlexGridData_Ctrl.SetRow(0);

m_FlexGridData_Ctrl.SetText("姓名");

m_FlexGridData_Ctrl.SetCol(2);

m_FlexGridData_Ctrl.SetRow(0);

m_FlexGridData_Ctrl.SetText("政治");

m_FlexGridData_Ctrl.SetCol(3);

m_FlexGridData_Ctrl.SetRow(0);

m_FlexGridData_Ctrl.SetText("高数");

m_FlexGridData_Ctrl.SetCol(4);

m_FlexGridData_Ctrl.SetRow(0);

m_FlexGridData_Ctrl.SetText("物理");

m_FlexGridData_Ctrl.SetCol(5);

m_FlexGridData_Ctrl.SetRow(0);

m_FlexGridData_Ctrl.SetText("化学"); //初始化FlexGrid

//m_FlexGridData_Ctrl.SetRows((int)(DataStr.GetLength()/18) + 2);

m_FlexGridData_Ctrl.SetRows(100);

m_FlexGridData_Ctrl.SetCols(6);

for (i = 1; i <= (int)(DataStr.GetLength()/18); i++)

{

m_FlexGridData_Ctrl.SetRow(i); //需要设置或修改的行号

m_FlexGridData_Ctrl.SetCol(0);

itoa(i, (char*)lpstrRow, 100);

m_FlexGridData_Ctrl.SetText(lpstrRow); //将第0列作为编号

for (j = 1; j <= 5; j++)

{

m_FlexGridData_Ctrl.SetCol(j); //需要设置或修改的列号

if(j == 5) {pos2 = DataStr.Find('\n', pos2) + 1;k=2;} //输出最后一门成绩

else {pos2 = DataStr.Find(',', pos1) + 1;k=1;} //定位课程成绩

// if(j == 5 && i == 6) pos2 = pos2 + 2;

m_FlexGridData_Ctrl.SetText(DataStr.Mid(pos1,pos2 - pos1 - k)); //显示数据

pos1 = pos2; //移动位置指针

}

}

}

3.添加“关闭”按钮的消息函数,代码如下:

void CGridDlg::OnButton2()

{

// TODO: Add your control notification handler code here

CFile myDataFile;

char szFileFilter[]=

"支持类型|*.txt|"

"文本文件(*.txt)|*.txt|"

"所有文件(*.*)|*.*||";

CString DataStr;

CString PathName;

CFileDialog dlg(TRUE,NULL,NULL,OFN_HIDEREADONL Y,szFileFilter);

if(dlg.DoModal() == IDOK)

{

PathName = dlg.GetPathName();

// PathName.MakeUpper();

}

else return;

myDataFile.Open(PathName, CFile::modeCreate | CFile::modeWrite); myDataFile.SeekToBegin();

int maxRow = m_FlexGridData_Ctrl.GetRows();

int maxCol = m_FlexGridData_Ctrl.GetCols();

CString data; //表格中的数据

char* dataBuf; //写入数据文件的字符串指针

for (int i = 1; i < maxRow; i++)

{

for (int j = 1;j < maxCol; j++)

{

m_FlexGridData_Ctrl.SetRow(i); //需要设置或修改的行号

m_FlexGridData_Ctrl.SetCol(j);

data = m_FlexGridData_Ctrl.GetText();

if (data.IsEmpty()) //是否到达表格末尾?

{

goto end;

}

dataBuf = (char*)(LPCTSTR)data; //cstring转换为char*,便于写入文件

myDataFile.Write(dataBuf,data.GetLength()); //写入数据

if (j == 5) break;

myDataFile.Write(",",1); //写入分隔标志

}

if (i == maxRow - 1) break;

myDataFile.Write("\r\n",2); //写入换行

}

end:

myDataFile.Close(); //关闭文件,切记

}

4.添加控件的KeyPress消息函数,代码如下:

void CGridDlg::OnKeyPressMsflexgrid1(short FAR* KeyAscii)

{

// TODO: Add your control notification handler code here

CString str ;

str = m_FlexGridData_Ctrl.GetText() ; // 获得当前位置的数据

str += (char) * KeyAscii ; // 添加键入的数据(或字符)

m_FlexGridData_Ctrl.SetText( str ) ; // 再写到同样的位置

}

四、思考题

1、使用CCommandButton::SetPicture(LPDISPATCH newValue)时,如何将位图的nID转换为LPDISPATCH型?

2、当改变对话框窗口大小时,如何使控件大小随之改变?

VB常用控件习题与解答

常用控件习题与解答 一、填空题 1.在图片框上放置的控件称为图片框的(子)对象,而窗体是图片框的(父)对象。 2.窗体的“名称”(Name)属性只能在(属性窗口中)设置。 3.在程序中设置窗体Form1的Caption属性为"主窗体",使用的赋值语句是(Form1.Caption="主窗体")。 4.当窗体的Enabled属性为(True)时,指定窗体响应事件。 5.窗体的Unload事件是在QueryUnload事件发生之(后)发生。 6.程序中,把当前窗体移动到屏幕左上角使用的方法为(Move0,0)。 7.在窗体Form1中坐标为(1600,800)的位置上输出字符串“Visual Basic 6.0”使用的语句为(Form1.Currrentx=1600)、(Form1.Currenty=800)、和(Form1.Print "VisualBasic6.0")。 8.若使文本框有边框,需设置BorderStyle属性的值为(1)。 9.在程序运行期间,用户可以用文本框显示信息。文本框接收输入的内容的属性是 (Text)。 10.若使文本框内能够接受多行文本,则要设置Multiline属性的值为(True)。 11.要把图形文件“C:\sample\diannt.jpg”装载到图片框Picture1上,使用的语句为(Picturel.Picture=LoadPicture("C:\sample\diannt.jpg"))。 12.若使图片框自动调整大小以适应装入的图形,则要设置Autosize属性的值为(True)。 13.除了在程序使用LoadPicture函数装载图形外,还可以在设计阶段通过修改(Picture)属性装载图形。 14.若程序中要把一些文本内容输出到图片框PictureBox,应使用(Print)方法。 15.当单选按钮OpdonButton的Value属性为(False)时,表示该单选按钮处于未选中状态。 16.若使命令按钮Command1重新生效,则使用的赋值语句为(Command1.Enabled=True)。 17.若使命令按钮不能接收和响应任何事件,可以设置Visible属性的值为(False)。 18.只有控件对象的Enabled和Visible属性值都为(True)时,该控件对象才能接受焦点。 19.Tab顺序是由建立控件时的(先后顺序)确定的。 20.设置框架Frame上的文本内容需要使用(Caption)属性。 21.在框架上可以设置一组相关控件,这些控件作为框架的(子)控件,它们具有总体的激活/屏蔽特性。 22.若屏蔽框架上的控件对象,则需设置(Enabled)属性的值为False。 23.列表框ListBox中项目的序号从(0)开始,到(Listcount-1)结束。 24.要显示列表框List1中序号为3项目内容,语句为(PrintList1.List(3))。

窗体中的常用控件 单选3分

窗体中的常用控件单选3分 1.在计算机控件中,每个表达式前都要加上("=") 2.用于显示更新数据库中的字段的控件类型是(绑定型) 3.关于控件的叙述,(选项组不能设置为表达式)的说法正确 4.(表)不是窗体控件 5.纵栏式窗体同一时刻能显示(一条记录) 6.无论是自动创建窗体还是报表,都必须选定要创建该窗体或报表基于的(报表) 7.没有数据来源的控件类型是(非绑定型) 8.关于控件的叙述,(在窗体设计视图窗口中的工具箱中只能看到部分控件)说法错误 9.能够接受数字型数据输入的窗体控件是(文本框) 10.在教师信息输入窗口中,为职称字段提供"教授""副教授""讲师"等选项供用户直接选择,应使用控件是(组合框) 11.要用文本框来显示当前日期,应设置文本框的控件来源属性是(=Data()) 12.窗口事件是指操作窗口时所引发的事件,(取消)不属于窗口事件 13.如果想再加入控件时,控件自动与网格对其,则应在加入控件前,执行"格式(对其网格)"命令 14.当窗体的内容比较多无法在一页中全部显示时,可以使用(选项卡)进行分页,若要进行页面切换,用户只需单击选项卡上的标签即可 15.(选项组)是用来显示一组有限选项集合的控件 16.在学生表中使用"照片"字段存放相片,当使用向导为该表创建窗体时,照片字段使用的默认控件是(绑定对象框) 17.为窗体上的控件设置Tab键的顺序,应选择属性对话框中的(数据选项卡) 18.使用窗体设计视图,不能创建(报表) 19.如果在窗体上输入的数据总是取自某一个表或查询中记录的数据,或者取自某固定内容的数据,可以使用(组合框或列表框)控件 20.(只要单击选项组中所需的值,就可以为字段选定数据值)的说法正确 21.(命令按钮)代表一个或一组操作 22.(可以向组合框中输入新值,而列表框不行) 23.创建窗体的数据源不能是(报表) 24.若要求在文本框中输入文本时达到密码"*"号的显示效果,则应设置的属性是("输入掩码"属性) 25.(窗体设计器)不是窗体的组成部分 26.关于控件的叙述,(在选项组中每次只能选择一个选项)的说法是正确的 27.

第七章 窗体习题答案

第七章窗体 一、选择题 1、B 2、B 3、B 4、A 5、D 6、A 7、C 8、A 9、D 10、B 11、B 12、C 13、D 14、D 15、C 16、B 17、D 18、C 19、D 20、C 21、B 22、B 23、C 24、B 25、C 26、C 27、C 28、C 29、D 30、D 31、D 32、A 33、B 34、A 二、填空题 1、结构化查询、非过程性 2、接口 3、命令 4、表、查询、SQL语句 5、窗体页眉、页面页眉、主体、页面页脚、窗体页脚、节 6、单击 7、数据表窗体 8、绑定型、非绑定型、计算型 9、一对多 10、“允许编辑”和“允许添加”都设置为“否” 11、控件 12、显示 13、命令 14、属性 15、控制句柄 16、字段、表达式 17、选项组 18、主窗体、子窗体 19、格式 20、复选框、选项按钮 21、控件来源 22、组合框、列表框 23、6 24、记录数据 25、多条记录 26、子窗体 27、顶部 28、一对多 29、表达式 30、已有的窗体 31、字段内容 32、一对多 33、多个表 34、标题 35、文本框、组合框、命令按钮 36、一条。 37、数据表视图、窗体视图 38、“允许删除”设置为“否” 39、数据表 三、简答题 1、窗体有什么作用? 答案:窗体有以下作用: ①通过窗体可以显示和编辑数据库中的数据。 通过窗体可以更方便、更友好地显示和编辑数据库中的数据。 ②通过窗体可以显示提示信息。 通过窗体可以显示一些解释或警告信心,以便及时告诉拥护即将发生的事情,例如用户要删除一条记录,可显示一个提示对话框窗口要求用户进行确认。 ③通过窗体可以控制程序运行。 通过窗体可以将数据库的其他对象联结起来,并控制这些对象进行工作。例如,可以在窗体上创建一个命令按钮,通过单击命令打开一个查询、报表或表对象等。 ④打印数据 在Access中,可将窗体中的信息打印出来,供用户使用。 2、Access中窗体有哪几种视图?各有什么特点? 答案:窗体有三种视图:设计视图、窗体视图与数据表视图。 设计视图的特点是可以自己添加控件,定义窗体的功能,按用户的的要求创建功能强大的窗体,还可以在设计视图下修改已经存在的窗体、美化窗体。 窗体视图的特点是展示和运行窗体。 数据表视图的特点是用数据表的形式显示窗体的数据字段及数据值。 3、什么是控件?有哪些种类的控件? 答案:控件是窗体、报表或数据访问页用于显示数据、执行操作或作为装饰的对象。 在Access中提供以下几种的控件: 文本框、标签、选项组、选项按钮、复选框、列表框、命令按钮、选项卡控件、图象控件、线条、矩形、ActiveX 自定义、数据透视表列表、电子表格、图表、切换按钮、组合框、绑定对象框、未绑定对象框、分页符、子窗体或子报表、超链接、滚动文字等。 4、控件有什么作用? 答案:控件可以用来在窗体、报表或数据访问页上显示数据、执行操作或作为装饰。例如,在窗体、报表或数据访问页上可以使用绑定文本框来显示记录源的数据,可以使用未绑定文本框来显示计算的结果或接

使用窗体控件

第2章使用窗体控件 课堂练习:为控件创建事件处理程序 5)传递给这个事件处理程序的第二个参数(e)的目的是什么? 答:参数e包含事件数据。它是一个EventArgs 对象(实际不包含事件数据的基类),或者是一个派生类(像MouseEventArgs)的实例。要查看派生类的完整列表,请在Visual Studio .NET帮助文档中使用短语“EventArgs 类”进行查找,然后点击链接转到“派生类”。 ●为Click 事件创建一个事件处理程序。 3)上面的双击动作为什么创建了一个Click 事件处理程序? 答:当在设计视图中双击一个控件时,IDE会自动为默认事件创建一个事件处理程序。课堂练习:创建和使用ToolBar控件 8)为什么不能向ToolBar 按钮添加图像呢? 答:ToolBar 控件将ImageList 控件作为图像源。使用ToolBar 控件的ImageList 属性指定Toolbar 将从哪个ImageList 控件获取图像。 13)运行应用程序。单击工具栏按钮时有事情发生吗?必须处理什么事件以响应单击ToolBar按钮? 答:ToolBar 的ButtonClick事件用来处理ToolBar按钮的单击。ToolBarButtonClickEventArgs 用来确定单击了哪个按钮。 课堂练习:在运行时添加和移除控件 ●添加新控件 6)为什么decimalCheckBox 出现在GroupBox1控件的左上角? 答:控件位置属性的默认坐标X和Y的值均为零。 课堂练习:在运行时更新菜单 ●使用另一个MainMenu 9)什么时候能在一个应用程序中使用多个MainMenu 控件? 答:在应用程序的上下文改变或者应用程序有多种状态时,使用(显示)多个MainMenu 对象会很有帮助。 ●将一个ContextMenu 分配给一个控件。 5)如何找出哪个控件与ContextMenu 有关联? 答:ContextMenu.SourceControl 属性获取显示快捷方式菜单的控件。 ●找出与ContextMenu关联的控件

实验名称MFC基本控件的使用

1、实验名称:MFC基本控件的使用 2、实验目的:掌握编辑框类及其方法,熟练掌握利用编辑框类开发基于MFC的应用 程序的方法。 3、实验内容:使用MFC AppWizard创建如图一所示的基于对话窗的应用程序,实现算 术加、减、乘和除运算。 图一 4、程序实现方法: (1)使用AppWizard建立应用程序框架 ①在进入Visual C++ 6.0的第一个界面下,选择MFC AppWizard(exe),在Project name 文本输入框中输入新建的项目名称“计数器”,并设置其所在位置,单击OK按钮,如图二所示。 图二Visual C++ 6.0的第一个界面 ②在MFC AppWizard的第一步中选择基本对话,如图三所示,其余的都采用默认选项。

图三MFC AppWizard的第一步界面 这样就建立了一个基于对话框的程序,如图四所示。 图四基于对话框的界面 (2)利用资源编辑器建立对话框 在图四的Resource View选项卡中打开Dialog资源组,本程序的工程文件名为计数器,因此,系统自动产生一个名为IDD_MY_DIALOG的资源文件,双击IDD_ MY_DIALOG,在右边的窗口中显示出待编辑的对话框。根据如图一所示的样式,利用Visual C++ 6.0的控键(Controls)建立对话框。 下面以“数据1”编辑框和“+”按钮为例介绍控件的创建过程,其他编辑框和按钮的创建可参照此操作: ①在图四中Controls的“编辑框”按钮上单击鼠标左键、在如图一所示的对话框编辑窗口上的“数据1”编辑框的位置上,按下鼠标左键,并拖动鼠标画出一个大小合适的编辑框。在编辑框上单击鼠标右键,在弹出的快捷莱单中选择Properties选项,此时弹出Edit Properties 属性设置对话框,如图五所示,在该对话框中输入ID属性。

各种控件的详细使用介绍

各种控件的详细使用介绍:常用属性,常用事件,常用的方法 控件的分类(控件根据所属的基类,进行划分) 根据是否能容纳其他控件,可以分为: 容器类控件(包括:表单集,表单,表格,表格列,页框,页面,命令按钮组,选项按钮组,工具栏,容器控件) 非容器类控件(包括:标签,文本框,编辑框,命令按钮,复选框,列表框,组合框,微调框,形状,计时器,线条,图像) 另外一种划分方法,是根据控件和数据环境中数据源的关系进行划分,控件分为:绑定型控件是指内容可以和与数据环境后端的表、视图或查询中的字段和内存变量相关联的控件。在该控件中输入、修改或选择的值将保存在数据源中,而数据源中值的改变,也将改变控件的值。(复选框,文本框,编辑框,列表框,组合框,表格,选项按钮组,微调框,activex控件) 非绑定型控件是指其内容不与后端的表、视图和查询中的字段或内容相关联的控件。(命令按钮,命令按钮组,线条,标签,计时器,形状,图像) 一、标签控件(Label)——非容器类控件,非数据绑定控件 用以显示文本,显示提示信息。标签上的显示文本由caption属性指定。 其中的文本在表单运行时不能被用户直接修改。 常用属性: 常用事件:mousemove 鼠标移动事件mousedown 鼠标按下左键事件 Click 单击事件mouseup 释放鼠标左键事件

【范例】参考实验作业HomeWork7-1-1.scx。 二、文本框与编辑框——非容器类控件,数据绑定控件 文本框——用以显示或编辑表中的非备注型字段的数据。 编辑框——用途与文本框相似,用以显示或编辑长字段或备注型字段的数据。 两者均为数据绑定控件,非容器类控件 文本框的常用属性: ?ControlSource 指定与文本框绑定的数据源 ?Value 指定文本框的当前选定的值 例如:value=0 表示文本框中的数据设置为数值型,不能输入字母或汉字?PasswordChar 用设定的字符来显示用户输入的值,而实际输入保存在value属性中。 例如:PasswordChar=*或者其他的符号。文本框中显示为*或其他符号

标准控件应用样本

第二章标准控件应用 一、标签控件 1、标签控件的属性: Name: 返回在代码中用于控件的名称。 BackColor: 返回或设置控件中文本或图形的背景颜色 Caption: 返回或设置在控件中显示的文本 Enabled: 返回或设置一个布尔值, 决定控件是否可用 ForeColor : 返回或设置控件中文本或图形的前景颜色 Font : 返回或设置一个Font对象, 用于指定控件中本的字体名称、字体样式和大小Height和Width : 返回或设置控件的高度和宽度 Left和Top : 返回或设置控件左边缘和上边缘与窗口左边缘和上边缘间的距离或控件左边缘的水平坐标及控件上边缘的垂直坐标和 Visible: 返回或设置一个布尔值, 决定控件是否可见 Alignment: 标签中文本的水平对齐方式该属性有3 个取值: 0 左对齐( 默认) 1右对齐2 表示居中对齐 AutoSize : 返回或设置一个布尔值, 决定控件是否改变大小以显示其全部内容。值为TRUE为自动改变大小以显示全部内容; 若为False( 默认值) , 则保持控件大小不变。BackStyle: 返回或设置一个值, 指定标签控件的背景是透明的还是不透明的。0表示透明, 1表示不透明。 BorderStyle: 指定标签控件的边框样式。0表示无边框, 1表示有固定单线边框 WordWrap: 返回或设置一个布尔值, 指定一个Autosize属性设置为TRUE的标签控件是否要进行水平或垂直展开, 以适合其Caption属性中指定的文本的要求 2. 标签控件的方法 Move方法: o bject.Move left, top, width, height 其中object表示标签控件, Move后面的4个参数均为单精度数, left, top是必选的,

第七章补充习题及解答

7.4 补充习题及解答 7.4.1 选择题 1.要想不使用Shift或Ctrl键就能在列表框中同时选中多个项目,则应把该列表框的MultiSelect属性设置为______。 A. 0 B. 1 C. 2 D. 其他 【解】答案是B。 2.删除列表框或组合框中指定的项目所使用的方法是______。 A. Move B. Remove C. Clear D. SetFocus 【解】答案是B。 3.当拖动滚动条中的滚动块时,将触发的滚动条的事件是______。 A. Move B. Change C. Scroll D. SetFocus 【解】答案是C。当鼠标拖动滚动块时触发Scroll事件,不管用什么方法,只要滚动块位置发生变化(Value值改变)即触发Change事件。 4.用户在组合框中选择的数据项可以通过一个属性获得,这个属性是______。 A. List B. ListIndex C. Text D. ListCount 【解】答案是B。组合框中的第一项其ListIdex值为0,第二项为1,依次类推。 5.下列控件中,没有Caption属性的是______。 A. 框架 B. 列表框 C. 复选框 D. 单选按钮 【解】答案是B。 6.复选框的V alue属性为1时,表示______。 A. 复选框未被选中 B. 复选框被选中 C. 复选框被选中但呈灰色 D. 数据类型不匹配 【解】答案是B。复选框Value属性的意义是:0-Unchecked(未被选定,默认值);1-Checked (选定);2-Grayed(复选框变成灰色,禁止用户选择)。 7.将数据项“高等数学”添加到列表框(List1)中成为第一项应使用______语句。 A. List1.AddItem "高等数学",0 B. List1.AddItem "高等数学",1 C. List1.AddItem 0,"高等数学" D. List1.AddItem 1,"高等数学" 【解】答案是A。列表框中项目的ListIndex值从0开始。 8.假如窗体上添加了一个列表框,名称是默认值(List1),其中共添加了5项数据,则语句Print List1.ListCount的结果输出为_____。 A. 5 B. 4 C. 6 D. 以上都不正确 【解】答案是A。ListCount返回当前列表框或组合框中总的项目数。 9.假如窗体上添加了一个列表框,名称是默认值(List1),其中共添加了5项数据,则引用列表框最后一个数据项应使用______。 A. List1.List(List1.ListCount) B. List1.List(List1.ListCount-1) C. List1.List(ListCount) D. List1.List(ListCount-1) 【解】答案是B。见第8、9题解。答案D错误是因为遗漏了列表框的名称。 10.执行了下列程序后,列表框中的数据有______。 Private Sub Form_Click() For i = 1 To 6 List1.AddItem i

第六章 常用标准控件

一、选择题 【2007年9月考题】(1)要使一个文本框可以显示多行文本,应设置为True的属性是 A)Enabled B)MultiLine C)MaxLength D)Width 【2007年9月考题】(2)在窗体上有一个名为Text1的文本框。当光标在文本框中时,如果按下字母键“A”,则被调用的事件过程是 A)Form_KeyPress() B)Text1_LostFocus() C)Text1_Click() D)Text1_Change() 【2007年9月考题】(3)设在窗体上有一个名称为Command1的命令按钮和一个名称为Text1的文本框。要求单击Command1按钮时可把光标移到文本框中。下面正确的事件过程是 A)Private Sub Command1_Click() B)Private Sub Command1_Click() Text1.GotFocus Command1.GotFocus End Sub EndSub C)Private Sub Command1_Click() D)Private Sub Command1_Click() Text1.SetFocus Command1.SetFocus End Sub End Sub 【2007年9月考题】(4) 设在窗体Form1上有一个列表框List1,其中有若干个项目。要求单击列表框中某一项时,把该项显示在窗体上,正确的事件过程是 A)Private Sub List1_Click() B)Private Sub Form1_Click() Print List1.Text Print List1.Text End Sub End Sub C)Private Sub List1_Click() D)Private Sub Form1_Click() Print Form1.Text List1.Print List1.Text End Sub End Sub 【2007年9月考题】(5) 若窗体上的图片框中有一个命令按钮,则此按钮的Left属性是指 A)按钮左端到窗体左端的距离B)按钮左端到图片框左端的距离 C)按钮中心点到窗体左端的距离D)按钮中心点到图片框左端的距离 【2007年9月考题】(6)在窗体上有如图所示的控件,各控件的名称与其标题相同,并有

VB6.0基本控件的属性

VB基本控件的属性,方法经及事件 VB基本控件的属性,方法经及事件 VB基本控件的属性,方法经及事件 所有控件都具有的属性: 1、Name: 表示在代码中用来标识一个控件的名字。 2、Enabled: 表示一个控件是否可以响应一个事件,即该控件可不可用。 值为true: 可以响应;值为false: 不可以看见。 3、Visible: 表示一个控件是否可见。值为true:可以看见;值为false: 不可以看见。所有控件都有具有的事件: 1、KeyDown : 当用户按下键盘上一个键时发生的。 2、KeyUp : 在用户松开键盘上按下的键时发生的。 3、KeyPress : 在Key Down和Key Up事件之间发生。 4、MouseDown : 在鼠标被按下时触发的。 5、MouseUp :在用户松开鼠标键时发生的。 6、Click :在用户单击鼠标左键时发生的。 7、DblClick :在用户双击鼠标时发生的。 一、窗体(Form) 属性: 1、Caption: 表示窗体标题栏的文字。 2、BorderStyle: 一般情况下为默认值,若更改为下列值: 1)值为0:没有窗体标题栏 2)值为1:窗体运行之后不能改变大小 3、WindowState: 设置窗体的大小。 3)值为0:窗体正常大小 4)值为1:窗体最小化 值为2:窗体最大化 4、BackColor: 表示窗体的背景颜色 事件: 1、Initialize(初始化事件): 在窗体加载和显示之前触发,这个事件只触一次。 2、Load(加载事件): 用来完成窗体显示之前需要完成的动作。 3、Activate/Deactivate (激活/非激活事件):是用户在同一个应用程序的两个或多个窗体之间移动时触发的。 4、QueryUnload(条件卸载事件): 决定窗体是如何关闭的。 触发QueryUnload事件时Unload 的参数和因素有: 1)VbFormControlMenu值为0 :选中窗体控件菜单中的Close命令。 2)VbFormCode值为1 :从代码中调用Unload 语句。 3)VbAppWindows值为2 :终止当前的Windows操作系统。 4)VbFormMDIForm值为4 :因为终止MDI父窗体而导致MDI子窗体的终止。 5、Terminate(终止事件):在窗体的所有实例从内存中清除时发生,只触发一次。方法: 1、Load:加载窗体,但不在屏幕上显示 2、Unload:卸载窗体,既从屏幕上也从内存中清除窗体。 3、Show:加载窗体并在屏幕上显示窗体。Show分为:

国家二级VB机试(常用标准控件)模拟试卷21

国家二级VB机试(常用标准控件)模拟试卷21 (总分:58.00,做题时间:90分钟) 一、选择题(总题数:29,分数:58.00) 1.窗体上有一个名称为HScroll1的滚动条,程序运行后,当单击滚动条两端的箭头时,立即在窗体上显示滚动框的位置(即刻度值)。下面能够实现上述操作的事件过程是 (分数:2.00) A.Private Sub HScroll1_Change() Print HScroll1.Vahe End Sub √ B.Private Sub HScroll1_Change() Print HScroll1.SmallChange End Sub C.Private Sub HScroll1_Scroll() Print HScroll1.Value End Sub D.Private Sub HScroll1_Scroll() Print HScroll1.SmallChange End Sub 解析:解析:本题考查的考点是有关滚动条的属性和事件的。单击滚动条的箭头时将触发Change事件,而滚动块的位置由Value属性返回。 2.设窗体上有1个水平滚动条,己经通过属性窗口把它的Max属性设置为1,Min属性设置为100。下面叙述中正确的是 (分数:2.00) A.程序运行时,若使滚动块向左移动,滚动条的Value属性值就增加√ B.程序运行时,若使滚动块向左移动,滚动条的Value属性值就减少 C.由于滚动条的Max属性值小于Min属性值,程序会出错 D.由于滚动条的Max属性值小于Min属性值,程序运行时滚动条的长度会缩为一点,滚动块无法移动 解析:解析:滚动条通常用来帮助观察数据或确定位置,也可用来作为数据输入的工具。其Max属性用于设置或返回滚动条所能表示的最大值,Min属性用于设置或返回滚动条所能表示的最小值。默认情况下,Max的值大于Min的值,即当滚动块向右移动时,其Value属性值增加。如果希望滚动条显示的信息从较大数值向较小数值变化,可将Min设置成大于Max的值,此时当滚动块向左移动时,其Value属性值增加。 3.设窗体上有一个水平滚动条HScroll1和一个命令按钮Command1,及下面的事件过程: Private Sub Form_Load() Private Sub Command1_Click() HScroll1.Min=0 HScroll1.Value=70 HScroll1.Max=100 End Sub End Sub (分数:2.00) A. B. C. √ D. 解析:解析:滚动条通常用来帮助观察数据或确定位置,也可用来作为数据输入的工具。其Max属性用于设置或返回滚动条所能表示的最大值,Min属性用于设置或返回滚动条所能表示的最小值。默认情况下,Max的值大于Min的值,即当滚动块向右移动时,其Value属性值增加。本题中Max-Min=100,则Value值为70的话,滚动块应该位于右侧三分之一处。 4.窗体上有一个名称为VScroll1的垂直滚动条,为了设定单击滚动条两端箭头时的Value增量值,应设置的属性是 (分数:2.00) https://www.doczj.com/doc/918231087.html,rgeChange B.SmallChange √ C.Max D.Min 解析:解析:滚动条通常用来帮助观察数据或确定位置,也可用来作为数据输入的工具。其Max属性用于设置或返回滚动条所能表示的最大值,Min属性用于设置或返回滚动条所能表示的最小值。LargeChange属性用于设置或返回单击滚动条中滚动框前面或后面的部位时,Value属性增加或减小的增量值;SmallChange 属性用于设置或返回单击滚动条两端的箭头时,Value属性增加或减小的增量值。

实验二 常用控件的使用

实验二常用控件的使用 一、实验目的 (1)掌握常用控件的属性和事件,掌握常用控件的使用,掌握常用控件编程; (2)熟悉并创建Windows窗体应用程序的过程; (3)掌握基于常用控件:MenuStrip、ToolStrip、StatusStrip、Panel、TreeView及 Splitter等构建类似资源管理器的主界面; (4)掌握Timer、ListView、ComboBox、DatePicker等常用控件的属性及应用。 (5)掌握动态构建TreeView节点的方法。 二、实验环境 ?PC机,Windows XP(2000)操作系统及以上; ?Visual Studio 2010(或2008)。 三、实验要求 (1)要求创建类似登录界面,并将登录时输入的信息:用户名传递给主窗体; (2)要求主窗体设置为多文档窗体; (3)要求实现动态创建TreeView控件; (4)实现TreeView节点、MenuStrip、ToolStrip单击事件; (5)实现在StatusStrip上显示登录的用户名、系统当前的日期、实时的时间。 四、实验内容 1、创建基于Windows窗体的应用程序项目; 2、创建登录窗体: (1)用户名和密码输入信息; (2)登录、退出等按钮; (3)实现按钮的单击事件; 3、主窗体的创建 (1)主窗体中要求实现:菜单、工具栏、功能树、状态栏; (2)功能树的创建要求动态创建,建议采用递归算法方式实现,建议树节点 参考信息如下:

(3)主窗体布局参考资源管理的方式实现,具体的布局方式参考下图。 4、数据的模拟 (1)功能树部分的数据可采用二维数组方式; (2)菜单至少建立2个以上菜单项; (3)工具栏至少建立两个以上工具栏项目; 5、部分参考代码: (1) 将字符串类型的窗体名称转换成Form类型 (2) 在主界面显示单文档窗体的参考代码 其中:this代表MDI窗体; GetForm为在(1)中定义的函数。

第七章 面向对象的程序设计

第七章面向对象的程序设计 本章是面向对象的程序设计。与第五章介绍的面向过程的结构化程序设计不同,主要介 绍面向对象程序设计的基础知识,包括面向对象的基本概念以及Visual FoxPro支持的面向对 象的编程技术,详尽介绍了对各类控件的选择与使用方法。在对诸如表单等各类控件对象的设 计、操作上,面向对象的编程技术有自己的独特之处,但在所有对象的各种事件和方法的程序 代码设计中,仍然使用到结构化的程序设计方法。本章的主要内容是面向对象程序设计的理论 基础,其程序设计的基本目标是设计出能在可视化环境下运行的应用程序窗口界面—表单。 7.1 学习提要 1.学习目标与要求 通过本章学习,读者应达到以下要求: ⑴了解对象、类等基本概念; ⑵理解对象的属性、方法和事件; ⑶熟练掌握表单的基本设计、操作和应用; ⑷掌握常用控件的设计与使用。 ⑸熟练掌握常用事件、方法的过程代码的设计方法。 ⑹了解自定义类的创建和使用方法。 2.重点与难点: ⑴本章重点:对象与类以及属性、方法和事件等基本概念;表单的设计与应用;常用控 件属性、事件和方法的选择与运用。 ⑵本章难点:本章的重点即为本章的难点 3.主要知识点 ⑴面向对象的概念 ①对象、类 ②属性、方法、事件 ③Visual FoxPro 中的基类 ⑵表单的创建与基本操作 ①表单的创建 使用“窗体设计器”或“表单向导”创建表单。 ②表单的修改、运行 使用“窗体设计器”编辑修改表单。使用菜单或命令方式运行表单。 ③表单的属性、事件和方法

表单常用属性的设置,表单的常用事件、常用方法。 ④设置表单的数据环境 数据环境的概念,数据环境的设置。 ⑶表单常用控件 ①表单常用控件的基本操作 控件对象的选定,移动位置,改变大小,剪切、复制与粘贴,删除,布局设置。 ②常用控件对象 标签控件,命令按钮与命令按钮组控件,文本框与编辑框控件,选项组和复选框控件,列表框和组合框控件,容器与表格控件,页框控件,计时器与微调控件,图像控件等。 ③控件对象的常用属性设置 Caption属性,Name属性,Alignment属性,ButtonCount属性,BackColor属性,BorderColor属性,BorderStyle属性,Enabled属性,ForeColor属性,InputMask属性,PasswordChar属性,Picture属性,Height属性,Width属性,Left属性,Top属性,Value属性,Visible属性,FontName属性,FontSize属性,ControlSource属性。 ④控件对象的常用事件的使用 Load事件,Init事件,Destroy事件,Unload事件,Error事件,Click事件, DblClick事件,RightClick事件。 ⑤控件对象的常用方法的使用 SetFocus方法,Release方法,Refresh方法,Show方法,Hide方法。 ⑷类的建立 使用“类设计器”创建类。 7.2 习题 一、单项选择题 1.以下关于Visual FoxPro类的说法,不正确的是() A)类具有继承性 B)用户必须给基类定义属性,否则出错 C)子类一定具有父类的全部属性 D)用户可以按照已有的类派生出多个子类 2.下列基类中是容器类的是() A)表单B)命令按钮C)列表框D)单选按钮 3.下列关于“类”的叙述中,错误的是() A)类是对象的集合,而对象是类的实例 B)一个类包含了相似对象的特征和行为方法 C)类并不实行任何行为操作,它仅仅表明该怎样做 D)类可以按其定义的属性、事件和方法进行实际的行为操作

常用窗体控件

常用窗体控件: String str=””; Foreach(Control item in this.Controls) { If(https://www.doczj.com/doc/918231087.html,.IndexOf(“checkBox”)>0) { CheckBox ck=(CheckBox)Item; If(ck.Checked) { Str=ck.Text+”,”; } } }

高级窗体控件: 1.菜单控件MenuStrip 使用步骤: ①在Windows窗体中添加一个MenuStrip控件 ②单击该控件的Items属性,弹出“项集合编辑器”对话框 ③可以添加MenuItem子项。子项的子菜单 选择其“MenuItem”选项,单击其 DropDownItems属性,弹出相接对话框 ①选中要添加右键功能的Form或者控件,打开控件的设计页面 ②从工具箱中找到ContextMenuStrip控件,将这个控件拖曳到Form或者控件的设计页 面上。这时系统就会在这个页面下面自动创建一个contextMenuStrip1控件,如果你想在这个页面添加多个菜单,那么你也可以拖曳多个这种控件到设计页面上。 ③按照你的要求将这些ContextMenuStrip控件改成你需要的名称。然后, 选择需要右 键弹出菜单的页面,比如你当前编辑的页面中有一个DataGrid,一个T reeList,而你想分别为这两个控件添加不同的右键菜单。那么你就可以先选择DataGrid控件,然后在这个控件的属性中找到ContextMenuStrip属性,点击该属性,系统会自动查找你拖曳到当前页面的所有ContextMenuStrip控件并将这些控件罗列在这个属性的下拉菜单中。你可以选择一个你预先定义好的ContextMenuStrip控件。这样就为这个DataGrid控件设置了右键菜单。其他控件也使用同样的方法添加。 ④定义你的菜单,在为控件分配完菜单之后,你就可以定义单个的菜单。这时你可以 选中一个ContextMenu控件。系统会自动在编辑页面的上面现一个可编辑的动态菜

第5章 常用标准控件

第5章常用标准控件 5.1 典型考题分析与解答 1.要把一个命令按钮设置成无效,应设置其哪一个属性值。 A.Visible B.Enabled C.Default D.Cancel 【分析】Visible属性为控件的可见性设置;Enabled属性为控件的有效性设置;Default属性为窗体默认命令按钮设置,即按Enter键时响应的命令按钮;Cancel属性为指定命令按钮是否为窗体“取消”按钮。 【解答】B 2.执行x$=InputBox("请输入x的值")时,在弹出的对话框中输入123,在列表框Listl选中第1个列表项(数据为456)。使y的值是123456的语句是。 A.y=x$+Listl.List(1) B.y= Val(x$)+Val(Listl.List(0)) C.y=Val(x$)+Val(Listl.List(1)) D.y=Val(x$)&Val(Listl.List(0)) 【分析】本题主要是考核学习者掌握列表框控件,Val函数及“&”运算符的功能。 先要明确,x$表示变量x是字符类型变量。所以InputBox函数输入的数据123被当作字符类型数据。 从ListBox控件输入的数据肯定是字符类型。选中Listl中的第1个列表项,该列表项表达式为Listl.List(0)。 选项A不是本题答案。因为Listl.List(1)不是列表框控件的第1个列表项。 选项B不是本题答案。Val函数是将字符串转换成数值,这是两个数值相加的表达式,运算结果是579。 选项C不是本题答案。道理同上,且List1.List(1)不是列表框控件的第1个列表项。 选项D是本题答案。虽然Val函数已经将字符串转换成数值,这是两个数值进行“&”运算,但“&”运算符忽略参与运算项的类型,而强行施加“连接”运算,得到的结果是123456。 【解答】D 3.要设置计时器控件的定时时间,需设置的属性是。 A.Interval B.Enabled C.Value D.Text 【分析】本题主要是考核学习者掌握计时控件属性的设置。

vb常用控件习题(含问题详解)

1.下列控件中没有Caption属性的是________。 A)框架B)列表框C)复选框D)单选按钮 2.复选框的Value 属性为1 时,表示________。 A)复选框未被选中B)复选框被选中 C)复选框有灰色的勾D)复选框操作有误 3.用来设置斜体字的属性是________。 A)FontItalic B)FontBold C)FontName D)FontSize 4.将数据项“China”添加到列表框List1中成为第二项应使用________语句。 A)List1.AddItem “China”,1 B)List1.AddItem “China ”, 2 C)List1.AddItem 1,“China”D)List1.AddItem 2,“China ” 5.引用列表框List1最后一个数据项,应使用________语句。 A)List1.List(List1.ListCount)B)List1.List(ListCount) C)List1.List(List1.ListCount-1)D)List1.List(ListCount-1) 6.假如列表框List1有四个数据项,那么把数据项“China”添加到列表框的最后,应使用________语句。 A)List1.AddItem 3,“China ” B)List1.AddItem “China ”, List1.ListCount-1 C)List1.AddItem “China ”, 3 D)List1.AddItem “China”,List1.ListCount 7.执行了下面的程序后,列表框中的数据项有________。 Private Sub Form_Click() For i = 1 to 6 List1.AddItem i Next i For i = 1 to 3 List1.RemoveItem i Next i End Sub A)1,5,6 B)2,4,6 C )4,5,6 D)1,3,5 8.如果列表框List1中没有选定的项目,则执行 List1.RemoveItem List1.ListIndex 语句的结果是________。 A)移去第一项B)移去最后一项 C)移去最后加入列表中的一项D)以上都不对 9.如果列表框List1中只有一个项目被用户选定,则执行 Debug.Print List1.Selected(List1.ListIndex)语句的结果是________。 A)在Debug窗口输出被选定的项目的索引值 B)在Debug窗口输出True C)在窗体上输出被选定的项目的索引值 D)在窗体上输出True 10.在窗体上画一个名称为List1的列表框,一个名称为Label1的标签,列表框中显示若干城市的名称。但单击列表框中的某个城市名时,该城市名从列表框中消失,并在标签中显示出来。下列能正确实现上述操作的程序是______。 A)Private Sub List1_Click()

管理系统中的计算机应用第七章(有练习)

第七章系统详细设计 (管理信息系统的总体设计完成以后,还需要确定子系统和各模块的具体实现方法,以便最终真正建立一个完善的管理信息系统。 要建立系统的各个功能模块,就要进行程序设计。所谓程序设计,实际上是对象的设计。对象有自己的数据(属性) ,也包括作用于数据的操作(方法) 和对象的响应(事件)。 学习管理信息系统的分析和总体设计以后,最终还是需要真正建立一个完善的系统。本章的目的就是要学习创建管理系统各部件的设计方法。) 主要内容: 熟悉创建系统各种界面、对象及处理程序的基本编程能力,为最终创建简单应用系统打下基础。 一、人机接口界面的设计 人机对话也叫人机交互,是指在程序运行过程中,为了控制或校验目的,通过计算机显示屏幕,使人和计算机对话

(交互)的操作。在Windows平台上,这种对话的界面主要有三种形式即菜单方式、工具栏方式、对话框方式。 1、创建下拉菜单 下拉菜单一般作为应用系统的主菜单,创建菜单的过程可以分成规划与设计、创建、确定任务、生成和运行测试五步。 2、创建快捷菜单 3、创建工具拦 4、创建对话框 二、输入界面设计 设计输入界面就要方便用户,做到高效、直观、准确、简便、舒适。信息的输入包括:数据的采集和数据的录入两个部分,采集就是确认和获取新产生数据的过程;录入就是把源数据转变成计算机可以识别处理的信息,并保存在外存储器中的过程。 (一)信息输入的方法和原则 1.信息输入的方法 可以分为批处理和联机处理两种类型。

批处理:先把数据采集到一个文件中,待检测合格或计算机空闲时,再把数据文件中的数据一次性地输入管理信息系统中。 联机处理:直接将采集到的数据实时输入管理信息系统的方式。 2.信息输入的原则 (1) 源点输入。 (2) 统一输入。 (3) 数据简洁。 (4) 用户界面友好。 3.输入数据的校验 数据校验主要使用人工静态校验和计算机动态校验两 种方式。 (l) 静态校验、就是利用人工目测的方式检查错误。这种方式效率不高,查出率会因人而异,一般不超过80%。 (2) 重复校验。对于同一组数据,由不同人员重复输入;然后由计算机比较检查一致性,叫做重复校验。重复校验可以将出错率降到0.l%以下。

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