Dephi学习
1.新建项目步骤,这样可以使exe文件生成到项目的根目录下 (1).文件(File)-->新建(New)-->应用程序(Application) (2).文件(File)--》全部保存(Save All),快捷键保存所有Ctrl+Shift+S 2.修改生成的.exe文件的图标 我用delphi编写了一个程序,想修改.exe文件的icon,delphi的图标实在太难看了。我使用的方法是:Project->Options->Application->LoadIcon.. load以后可以从旁边看到图标的样子 3.快捷键 F12 可以在窗体设计器和代码编辑器窗口之间切换 Ctrl+Shift+U 减少缩进 Ctrl+Shift+I 增加缩进 Ctrl+J 代码智能提示 编辑-->锁定组件,可使控件不能进行移动操作 4.工程文件(.dpr):用于保存窗体、单元等的信息,以及程序运行的初始化代码等。 单元文件(.pas):Pascal文件,用于保存程序源代码,可以是与窗体有关的单元或是独立的单元文件 窗体文件(.dfm):保存窗体或数据模块及其构件特征的二进制文件 选项文件(.dof):含有当前项目选项设置的文本文件 配置文件(.cfg):含有当前项目编译配置的文本文件 资源文件(.res):该二进制文件包含项目的图标,由delphi7.0不断更新和创建,用户一般不需要修改 备份文件(.~dp,.~df,.~pa):分别对应工程、窗体、单元文件的备份文件 5.常用类型:Byte、Integer、Real=Double、Char、string[100]相当于AnsiString、Boolean 6.常量: (1).真实常量 const 常量名1=常量值1; 常量名n=常量值n; const PI=3.1415926 K=PI/180; (2).类型常量 const 常量名:类型名=常量值; const Hello:string='Hello'; Max:Integer=100; Digits:array[0..9] of Char = ('0','1','2','3','4','5','6','7','8','9'); 7.变量声明: var 变量名1:类型名1; 变量名n:类型名n; 全局变量定义时初始化:var 变量名:类型名=常量表达式 8.关系运算符:<>不等于、and(相当于C# &&、or(相当于C# ||)、not(相当于C# !=) 9.算数运算符: +、-、*、/、div 整数除法、mod 取余,相当于C#中% 10.赋值语句:{变量名|属性名}:=表达式 11.注释语句 {<注释内容>} (*注释内容*) //注释内容 12.程序流程控制语句 if语句: if 条件 then 语句1; else 语句2; var x,y:double; begin if(x>1) then y:=1; else y:=2; end; 13:case语句(相当与C#中switch语句) case 选择器表达式 of 情况常量表1:语句1; 情况常量表n:语句n; else 其他语句列; 示例: var x:Integer; grade:string; begin case (x div 10) of 10,9,8:if x>85 then grade:='优' else grade:='良'; 7:grade:='良'; 6:grade:='及格'; 5,4,3,2,1:grade:=不及格'; else grade:='输入错误'; end; 14.循环语句 (1).repeat <循环体> until <条件>;相当C#的do while 示例: procedure TForm1.ButtonClick(Sender TObject); var n:integer; x,temp,sum:double; begin x:=strtofloat(Edit1.Text); //从第一个编辑框中读入x的值 n:=1;temp:=x;sum:=x; repeat //循环语句开始 n:=n+2; temp:=temp*(-x*x)/((n-1)*n) sum:=sum+temp; until abs(temp)<le-7; /.当最后一项的绝对值小于10的-7次方时循环语句结束 edit2.Text:=format('%f',[sum]); //输出sinx的值 end; (2).while <条件> do <循环体>; (3).for <循环变量> :=<初值> {to|downto}<终值> do <循环体>; 15.showmessage('messagebox');相当于C#MessageBox.Show(); strtofloat(str)相当于C# float.Parse(str); StrToInt(str); format('得到一个解:鸡翁%d只,鸡母%d只',[x,y]);相当于C# string.format(); 16.数组定义 type <数组类型>=array[<下标>] of <基类型>; 示例: type MyArray=array[1..100] of Real; var array1,array2:array[1..100] of real; 17.二维数组 type <数组类型名称>=array[<下标类型1>,<下标类型2>]of <基类型>; 类型: type RealArray=array[1..20,1..100]of Real; 18.动态数组,释放动态数组MyArray:=nil; type <数组类型名称>=array of <基类型>; 也可在声明变量时直接声明一维动态数组: var <变量名>:array of <基类型>; 如下代码: var MyArray:array of Integer; 示例: var MyArray:array of Real;//定义一个名为MyArray的动态数组 begin MyArray[1]:=1.52; //错误,没有明确数组大小前是不能对数组赋值的 setlength(MyArray,30);//设置动态数组长度为30,下表从0到29 Myarray[2]:=4.56;//正确