第四章 文本编辑器的设计(一)(3)

2019-04-23 23:03

多页面界面分为静态MPI和动态MPI两种形式。静态MPI的标签数量固定,用户在事先设计好的多个页面上进行切换。象选择对话框(Option Dialog)就属于静MPI。动态MPI的标签数量不固定,由程序根据需要动态的产生或消除,象代码编辑窗体就是动态MPI,程序可根据用户的需要产生多个文本页面,也可以动态地关闭页面。利用Delphi的TNotebook和Ttabset 可十分方便地设计静态MPI。设计动态MPI则需要编写专门的代码。

4.2.1 静态多页面界面

TNotebook,TTabSet可用来开发静态多页面界面。TNotebook部件能显示多页, 每页都有相应的控制。通常TNotebook与TTabset配合进行控制。TTabset 有一组水平的标签,每个标签可通过创建字符串列表进行某种控制。

MPIEDit例程中的主窗体中有一个TNotebook 部件和 TTabSet 部件。 把两个部件的Aglin属性设置成bsTop和bsBotton,使它们分别处在窗体的上下两部分。为了使TTabSet与TNotebook配合工作,使用下代码:

TabSet1.Tabs := Notebook1.Page; 另外,在TabSet的OnClick事件中定义下如下代码,可使用户在选择标签时开打相应的页。

TObject);… begin

procedure

:

TEditForm.TabSetClick(Sender

Notebook1.PageIndex := TabSet1.TabIndex; … end;

设计静态MPI时,可在部件窗体(Component Palette)的WIN3。1页面中选中TNotebook 部件,然后在Object inspector窗体中双击TNotebook的Pages属性,Dephi 将弹出对话框,用户可以在此确定Notebook的页数和字符串列表,如图4.6。关闭对话框后, 可对每一页进行设计,使用鼠标右按钮弹出快速菜单进行页面切换。

4.2.2 动态多页面界面

使用Delphi进行静态MPI设计非常简单,进行动态MPI设计则需编写专门的代码。 对

于一个多页面文本编辑器,应能实现以下功能:

● 动态生成页面,每个页面均能进行文本编辑

● 动态关闭页面,直到窗体中只有一个页面为止

● 页面切换不影响各种文本编辑操作 为了实现以上功能,程序中使用了动态页面类(TDynaPage),其定义如下: type TDynaPage = Class(TObject);

该类可根据需要动态的产生页面, 每个页面上创建了可进行文本编辑的TMeno部件。

procedure... puclic CurPage : integer; FileList : TSringList; end;

CurPage表示当前用户选择的页面数,用户切换、增加、删除页面均影响CurPage 的值,CurPage初如化为零页。FileList存放打开或创建文件的名字以及与这些文件相关的编辑部件TMemo,页面动态创建、删除将影响FilstList的值。


第四章 文本编辑器的设计(一)(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:福师2013秋《小学德育论》在线作业一、二

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: