⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 o21.htm

📁 C++Builder教学大全
💻 HTM
📖 第 1 页 / 共 2 页
字号:
 

<html>

<head>

<title>用C++Builder3制作NotePad(记事本)</title>

<meta http-equiv="目录类型" content="文本/html; 字符集=gb2312">

</head>

<body bgcolor="#FFFFFF">

<table width="100%" border="0" height="285">

  <tr> 

    <td height="35"> 

      <div align="center" class="p14"><font color="#000000">用C++ Builder3 制作NotePad(记事本)</font></div> 

    </td> 

  </tr> 

  <tr valign="top">  

    <td><font color="#000000">启动C++ Builder3后,在File菜单中选New APPlication来建立一个新程序。这时,显示在屏幕中间的窗口的标题是Form1,这个窗口是程序的主表单(就是主窗口的意恩),它将在程序启动时自动显示。而以后再创建的表单(Form)一般需要用Show()方法(Method)来显示。和组件一样,系统为第一个表单起名为Form1,以后的表单起名为Form2、Form3等等,标题(Caption)也是如此。<br> 

      &nbsp;&nbsp; 当然,你可以将它们改成你喜欢的名字。我们先来把Form1的名字(Name)属性设为MainForm,把MainForm的标题(Caption)属性设为“Untited.txt--我的记事本”。接着可以用鼠标拖动窗口的位置和改<br> 

      变窗口的大小。以上的这些工作,几乎每个程序都需要如法炮制一番。<br> 

      &nbsp;&nbsp; 随后,我们要开始NotePad的编程工作了。知己知彼,百战不殆,先来分析一下MicroSoft NotePad的结构。其实NotePad是附件里最简单的程序了,它的主窗口中只包含一个占据全部用户区域(Client  

      Area)的多行的编辑控制(Edit)。由于编辑控制最多容纳64KB文字(Windows95),所以NotePad只能打开小于64KB的文件。好,我们来依样画葫芦,选择Standard中的多行编辑(Memo)组件(而不是单行编辑组件)。<br> 

      &nbsp;&nbsp; 放入表单中,将多行编辑Memo1的Align属性设为alClient,这时Memo1撑满了整个窗口,Memo1中显示的是Memo1。选择Memo1的Lines属性,[TString]后面出现了一个按钮。<br> 

      &nbsp;&nbsp; 单击该按钮,将出现一个设置Lines属性的对话框,其中第一行便是“Memo1”。多行编辑(Memo)组件的Lines属性在设计时(Design  

      Time)设定的内容将在该窗口创建时自动显示。由于我们不需要显示什么,所以把“Memo1”擦掉,选OK退出。你一定想看看目前的效果,运行一下吧。编译……连接……启动程序……怎<br> 

      么样,是不是和NotePad一模一样,能打字、删字、删行,还能使用右键菜单来复制(copy)和粘贴(paste)。<br> 

      &nbsp;&nbsp; 本来就是嘛,用一样的编辑控制,不一样才怪呢。哎,不对,好像字体小了点,而且没有滚动条。没有关<br> 

      系,关闭程序回到C++ Builder3中,先修改Memo1的字体(Font)属性,选择system字体(当然你爱选什么字<br> 

      体都可以),然后设置滚动条(ScrollBars)属性,选择ssBoth(两根滚动条都要)。在这些改动之后,先别急着运行,windows的程序没菜单是不行的。在C++  

      Builder中,菜单也是组件之一。选择Standard中的主菜单(MainMenu)组件放入表单中。主菜单(MainMenu)组件显示为一个图标。顺便提一句菜单,对话框或系统功能之类组件属于非可视组件(nonvisual  

      components),它们的工作基本不是用来满足视觉的,或者在程序运行时根本就看不见(相对于界面上可视组件来说),因此你可以将非可视组件放在表单中的任意位置。<br> 

      &nbsp;&nbsp; 接下来的工作是制作菜单,双击主菜单MainMenu1的图表,会弹出菜单编辑窗口,开始时是一个空菜单。按右键会弹出一个菜单(不是我们要做的菜单),其中:<br> 

      Insert(添加一个菜单项,按Insert键完成相同的功能)<br> 

      Delete(删除一个菜单项,按Delete键完成相同的功能)<br> 

      Create SubMenu(添加一个子菜单,按Ctrl + →键完成相同的功能)<br> 

      Select Menu(选择一个菜单,用来关闭当前编辑的菜单并选择另一个菜单来编辑)<br> 

      Save as Template(将当前菜单保存为模板,供以后使用)<br> 

      Insert From Template(将已有的菜单模板加入当前菜单)<br> 

      Delete Template(删除菜单模板)<br> 

      Insert From Resource(从资源文件中取得菜单加入当前菜单)<br> 

      &nbsp;&nbsp; 制作“我的记事本”的菜单有一种偷懒的方法,就是照抄Microsoft记事本的菜单。你可以用BC5.02的IDE打开Notepad.exe(先把打开文件对话框中的Viewer设为Edit  

      Resource,再把文件类型设为Exe cutable(*.exe),这样才是以编辑资源的方式打开EXE文件,否则默认的打开方式是Debug调试程序),将里面的菜单导出以RC(资源脚本)方式存盘,然后用Insert  

      From Resource导入该菜单;一共用不了2分钟。<br> 

      &nbsp;&nbsp; 还有一种方法就是自己一项一项慢慢地做。当然,不管你用什么方法,最后都要做出菜单来才能继续下面的工作。下面附上从Windows  

      NT4.0中Notepad导出的菜单的资源脚本menu.rc,把下面的文件以menu.rc存盘就能用C++ Builder3来导入了:<br> 

      1 MENU<br> 

      { POPUP "文件(&amp;F)"<br> 

      &nbsp; { MENUITEM "新建(&amp;N)", 9<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "打开(&amp;O)...", 10<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "保存(&amp;S)", 1<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "另存为(&amp;A)...", 2<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM SEPARATOR<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "页面设置(&amp;T)...", 32<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "打印(&amp;P)", 14<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM SEPARATOR<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "退出(&amp;X)", 28<br> 

      &nbsp; }<br> 

      &nbsp; POPUP "编辑(&amp;E)"<br> 

      &nbsp; { MENUITEM "撤消(&amp;U)\tCtrl+Z", 25<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM SEPARATOR<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "剪切(&amp;T)\tCtrl+X", 768,GRAYED<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "复制(&amp;C)\tCtrl+C", 769, GRAYED<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "粘贴(&amp;P)\tCtrl+V", 770,GRAYED<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "删除(&amp;L)\tDel",771, GRAYED<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM SEPARATOR<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "全部选定(&amp;A)", 7<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "时间/日期(&amp;D)\tF5",12<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM SEPARATOR<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "自动换行(&amp;W)", 27<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "设置字体(&amp;F)...", 37<br> 

      &nbsp; }<br> 

      &nbsp; POPUP "搜索(&amp;S)"<br> 

      &nbsp; { MENUITEM "查找(&amp;F)...", 3<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "查找下一个(&amp;N)\tF3", 8<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "替换(&amp;R)"', 40<br> 

      &nbsp; }<br> 

      &nbsp; POPUP "帮助(&amp;H)"<br> 

      &nbsp; { MENUITEM "帮助主题(&amp;H)", 5<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM SEPARATOR<br> 

      &nbsp;&nbsp;&nbsp; MENUITEM "关于记事本(&amp;A)...",11<br> 

      &nbsp; }<br> 

      }<br> 

      关于菜单,还有两点要提:<br> 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -