高中时期,有幸上过2节pascal的课,老师讲了一些英文(实为关键字和变量),介绍了二进制及其计算,然理解不透,遂弃之。
十几年后,因工作需要维护一个上个世纪的 delphi 工程,故学之,但已无甚意义,简记之,供自学用。
IDE相关
Delphi 7,CodeGear,可在xp、win7、win10上运行。
创建工程
project->Add New Project…。
控制选择
鼠标选择。ctrl+光标:小移动。ctrl+shift+光标:较大移动。
对齐:右键–>Position->Align,再选择。注:似乎没有快捷方式。
单元代码和控件界面:F12
Debug 和 Release 的切换方法:
进入 Project Manager -> Build Configurations, 在 Debug 或 Release 上双击, 或从右键 Activate。
按Altr+鼠标选择,列模式(和notepad++相同)。
界面开发
小结
各简单控件使用、属性等,弹出窗口,多窗口显示,logo,标题,最大/小化。退出程序。对话框弹出。
状态栏 OK
菜单 OK
多面板
树形 OK
列表框
上下框 OK
菜单栏下的图标
按键响应(上下左右)
图片显示
socket
初始化、退出
initialization:在单元中放在文件结尾前,初始化,只运行一次。
finalization:在单元中放在 initialization
和 end.
之间,退出时运行一次。
窗体自动初始化:窗体界面,选OnCreate
事件,一般函数名为FormCreate
。在Create
时会自动调用,即进入窗体时最选被调用。
手动初始化:窗体实现代码,自定义Init
函数,在创建窗体时后,调用之。
布局相关
对齐:alCustom,alNone:可自由拖动。但是其它的类型是自动的。有时不小心会乱,需要关闭但不保存。
可以在左侧拖动控件到某个页面(如panel),可理解为控件也有层次。
控件事件及描述
常用重要的:
窗体控件事件:
1 | OnCreate 建立事件,窗件或控件第一次建立时发生。OnCreate事件只发生一次,用来执行初始化任务 |
备忘:
1 | OnActive 焦点称到窗体或控件时发生 |
杂项
新建工程类型: VCL Forms Application。
默认工程名为Project1,dpr中有program Project1
,另dpr、res文件名称保持一致,否则编译不通过。
如果修改 exe 文件名称,则系统状态栏名称亦会变化。
已定的控件名称(即加了响应代码),如修改之,则代码(函数名)会即时变化,不需手动改。
self不需要定义,可直接使用,如self.Text
为窗口标题。
字符串及资源文件,在pas源码定义:
1 | resourcestring |
会被编译到 drc 文件中,形式:
1 | #define <单元名称>_Str这是变量 638438 |