文本编辑器的设计(一)

2016-01-29 14:02 28 1 收藏

文本编辑器的设计(一),文本编辑器的设计(一)

【 tulaoshi.com - Delphi 】

 
本章介绍多文本界面(MDI) 、多页面界面(MPI) 技术;VCL库中TMemoTEdit 控件以及有关文本编辑的常用对话框的使用。我们开发的MPIEdit.dpr是一个文本编辑的实用程序,可实现如下功能:

  ● MDI的编辑环境

  ● MPI的编辑环境

  ● 创建打开、编辑、保存文件

  ● 查找、替换文件中指定的字符串

  ● 复制、粘贴、剪切字符串

  ● 设置文件字体大小

  ● 打印文件 

  本章将通过MPIEdit实用程序逐一介绍在Delphi中如何实现上述功能。

  文本编辑器是一种常用的应用程序。用户在编辑器中编辑多种文件,在多个文件之间进行数据交换,对文件进行各种属性设置,并按自己要求打印文件。 

4.1 多文本界面 

  多文本界面是一种在一个应用程序中同时打开两个或更多文件的界面形式。例如在字处理程序可同时打开多个文件,用户可在多个文件中方便地进行切换.

MDI应用程序提供了一种方便的方式,使得用户在同一工作区域内对多个文档进行观察和交换数据。MDI工作区域可分为父窗体和子窗体,在DephiMDI应用程序中,父窗体通常是程序的主窗体。

  在MDI中,父窗体之外的窗体称为子窗体,文档或其它数据在子窗体打开。这些文档可以是相同的文件格式,或在应用程序支持下也可以是不同的文件格式。

  在设计阶段,可创建 MDI 父窗体作为应用程序主窗体, 亦可创建子窗体样板。Delphi允许创建多个子窗体类型,但MDI应用程序只支持其中的一种。

  本节讲述创建MDI应用程序的基本步骤:

  ● 创建主窗口

  ● 创建子窗口

  ● 创建主窗口菜单

  ● 融合菜单

  ● 运行时创建子窗口 

4.1.1 创建父窗口 

  在MDI应用程序中,主窗口为应用文档提供一个工作区域。这个区域可打开一个或多个子窗口,创建父窗口是建立MDI应用程序的第一步。

  创建父窗口与其它窗口类似,不同之处在于设置窗体的FormStyle属性。

  FormStyle属性可决定一个窗体是父窗口还是子窗口,或不是MDI类型。 只能在设计阶段确定FormStyle。在Object Inspector窗口中将FormStyle属性设置成fsMDIForm。值得注意的是应当把父窗口定义为应用程序的主窗体,否则程序编译会出错。 

4.1.2 创建子窗口 

  设计阶段可创建子窗口的样板,用户在运行进使用样板的实例。子窗口是缺省可见的,如果应用程序在运行进创建子窗口,不要让Delphi自动地创建。

  创建子窗口时将窗体的FormStyle属性设置为fsMDIChild。如果程序在运行时创建子窗口,则

  1. 选择OPtions|Project菜单,系统弹出自动创建列表对话框;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)

  2. 在自动创建列表中选中子窗口;

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)

  3. 单击按钮将子窗口移至可得到(Available)窗体列表;

  4. 并单击OK按钮退出。

4.1.3 创建应用程序菜单与菜单融合 

  父窗口的菜单应作为应用程序主菜单。如果子窗口有菜单, 则当子窗口在运行获得焦点并最大化时,子窗口的菜单项将融合父窗口菜单。

  创建父窗口与子窗口菜单的方法与创建普通窗体菜单类似, 详细步骤见第一章。菜单融合是指程序运行过程中,子菜单与父窗口菜单的相互作用。 如当子窗口获得焦点时,子窗口的菜单或插入主窗口的菜单中,或将替换部分或全部的父窗口菜单。

  进行菜单融合需设置的两个属性:

  ●

来源:http://www.tulaoshi.com/n/20160129/1492350.html

延伸阅读
标签: Web开发
!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "' target=_blank rel=nofollow>http://www.w3.org/TR/html4/loose.dtd" html head titleUBB编辑器/title meta http-equiv="Content-Type" content="text/html; charset=gb2312" link href="style.css" rel="style...
注:续网友 hua 之后,网友 Linuxhero 在讨论区发布了他改进 hua 编写的编辑器程序,并消除了文件存储的乱码问题,本站测试了这个程序,效果不错,希望两位网友再接再励不断地把这个编辑器完善起来,同时也谢谢两位网友对非常空间的支持! ----------------------------------------------------------- 作者:linuxhero ...
标签: 电脑入门
★ 公式编辑器的来历 你一定知道在Word中有个公式编辑器应用程序,但你可能不清楚它其实不是微软公司开发的,它是Design Science公司的Mathtype公式编辑器特别版,是为Microsoft应用程序而定制的。 ★ 公式编辑器的安装 公式编辑器不是Office默认安装的组件,如果要使用它,重新安装Office至如图1所示步骤时,在Office工具中选择公式编辑器...
注:本站文章 这里用到了屏幕开发库 curses 和键盘函数 keypad. 下面来看源程序: #includecurses.h #define STARTX 1 #define STARTY 1 void initial() { initscr(); /* 初始化 */ cbreak(); /* 用来开启 cbreak 模式,cbreak 指除了DELETE,CTRL终端处理的非凡字符外...
用VC++设计语法编辑器 作者:ZhengXu 下载源代码 语法编辑器是一个可以对程序设计语言进行语法编辑的文本编辑器,它对程序设计语言进行语法关键字进行加亮处理,如注释行、字符串、语法关键字、数字等,这样使得源程序更容易阅读,VB、VC++、DELPHI 等开发环境都提供了语法编辑功...