第三章C语言编辑器设计与实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章C语言编辑器设计与实现

第三章 单文档应用程序 在本学习情境中主要学习: (1)CEditView的使用 (2)TC环境配置与TCC的使用 (3)文件的读写操作 (4)顶层菜单、快捷菜单和图标区菜单的使用 (5)工具栏、状态栏的使用 3.2C语言编辑器设计与实现 3.2.1C语言编辑器框架生成 在标准的SDI应用程序向导中,CXXXView类的基类是CView类,在设计C语言编辑器中可以将基类修改为CEditView,如图所示。 图 新建CEditPad工程 图 选择单文档应用程序框架 图 修改CCEditPadView类的基类为CEditView 单击Finish按钮,完成工程的创建。 编译、运行程序,如图所示。 图 程序运行结果 在工程的ResourceView中,可以将程序的图标换掉,默认情况下如图所示。 图 工程默认图标 (1)将想要更换的图标拷贝到工程res文件夹中,删除掉原来的NotePad.ico文件,将自己的ICON图标命名为CEditPad.ico即可。 (2)或者使用Import菜单,将想要更换的图标导入到工程中,如图所示。删除原来的IDR_MAINFRAME图标,将自己的图标命名为IDR_MAINFRAME即可。 图 导入工程图标 3.2.2程序菜单设计 菜单是windows应用程序中非常重要的人机界面,是用户与应用程序之间进行交流的主要方式之一,也是用户界面对象中的一个最重要的对象。 菜单是一系列命令的列表,用户能够选中其中的菜单命令并执行相应任务。 仍然使用我们前面生成的NotePad程序,编辑由AppWizard自动生成的菜单资源。 要编辑菜单资源: (1) 选择项目工作区的ResourceView标签,切换到资源视图。 (2) 选择菜单资源类型。 (3) 选定菜单资源IDR_MAINFRAME,双击该项或单击鼠标右键然后在弹出菜单中选择Open选项。Visual Studio将弹出菜单编辑窗口,显示菜单资源IDR_MAINFRAME,其中IDR_MAINFRAME是由AppWizard在创建该程序时自动生成的。 图 显示工程菜单资源 (4)要删除某个菜单项或弹出菜单,可用鼠标单击该菜单或用上下光标键来回选择,然后按Del键删除。 (5)要插入新菜单项,可选定窗口中的空白菜单框后按回车(或直接用鼠标双击该空白框),Visual Studio弹出Properties(属性)对话框。属性对话框用于输入菜单项的标题、标识符、菜单项在状态栏上显示的提示(Prompt),并为该菜单提供属性调整。也可以在选择一个已有的菜单项时按Ins键,以在该菜单项上方插入一个空白菜单项,然后双击该菜单项进行编辑。要插入一个分隔线,只需将菜单项的Seperator属性打开即可,如图所示。 图 增加一个分割线 双击空白框,Visual Studio弹出菜单Properties对话框,在ID的下拉列表中选择ID_EDIT_FIND,即将该菜单绑定到ID_EDIT_FIND,即可实现查找功能。 图 增加一个查找菜单 图增加替换菜单 图 增加全选菜单 图 增加时间/日期菜单 为了能够实现编辑区的代码编译链接,增加一个程序的顶层菜单,并增加一个编译链接的子菜单,如图所示。 图 增加一个程序顶层菜单 图 增加编译链接子菜单 在CCEditPadView类中为编译链接菜单增加消息映射函数OnComplie,如图所示。 图 增加菜单Command映射函数 图 CCEditPadView类函数列表 3.2.3程序框架实现 为了模仿VC的输出框,引用开源的SIZECBAR类。首先将类的头文件和源文件拷贝到工程文件夹中,如图所示。 图 将文件拷贝到工程文件夹中 将文件添加到工程中,如图所示。 图 Add Files to Projects 图 Insert Files into Project 图 增加ID_WNDOUTBAR的StringTable 在CMainFrame类中增加编译输出条,首先在类中增加mybar类头文件和定义对象m_CtrlBar,然后在类的OnCreate函数中将其创建出来,如图所示。 图 包含头文件并增加对象 图 产生m_CtrlBar对象 //产生程序的输出窗口 if(!m_CtrlBar.Create(程序输出,this,CSize(100,100),TRUE,ID_WNDOUTBAR)) { TRACE0(Failed to create outbar\n); return -1; // fail to create } m_CtrlBar.SetBarStyle(m_CtrlBar.GetBarStyle() | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNA

文档评论(0)

cuotian + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档