阶段一总结

目录
1.数据类型
2.申明API
3.流程
4.组件的使用
下一步研究方向(1.源码调试方法的整理 2.代码风格的优化(全局变量 局部变量的命令规则) 3.Delphi DLL的写法 4.自用函数的封装
5.其他组件的用法(学习Delphi就是学习Delphi组件的用法)) 
********************数据类型********************

整型

integer 有符号整型 长度4字节  -2147483648-2147483647
(鄙视很多编译器 什么句柄型 布尔型什么的 按照罗云彬的说法 汇编只有整型
句柄就是一个整型数 BOOL型就是一字节的1或者0 把简单的问题搞复杂而已)

Cardinal 无符号整型 长度4字节 0-4294967295

longword  长字型    长度4字节 0-4294967295
(这个最接近汇编的申明办法 汇编一般申明 dword(长度4字节) Delphi申明longworld 呵呵

(一个汇编的dword整型 Delphi有三种申明办法 呵呵)


smallInt  小整型      长度2字节    -32768-32767
Word    无符号小整型  长度2字节    0-65535  


shortInt  短整型      长度1字节     -128-127
Byte    无符号短整型  长度1 字节    0-255


好吧 写到这里我好象懂了 byte(1字节) word(字) longworld(双字) 
可以和汇编对应 

----------------------------------------------------

逻辑型
Boolean  逻辑型    1     False(假)0/True(真)1

-----------------------------------------------------
文本型
string  文本型     2的31次方的字符 

Char    字符串     1个字符

例如 a:array[0..5]of char 申明 内存模型为 00 01 02 03 04 05的字符串 


----------------------------------------------------
数组

定义一个静态结构数组

a:array[0..6]of Byte 申明 内存模型为 00 01 02 03 04 05 06的字节集 静态数组


你也可以自己定义一个结构 创建一个结构数组
自己定义的结构
 type
   Snapshot32=record //记录类型的名称
   A1:Integer;
   A2:Integer;
   end;

a:array[0..6]of Snapshot32;


定义一个动态结构数组
a:arry of integer; 或者 a:arry of Snapshot32
注意:动态定义以后 要用数组前一定要用
setlength(数组名,数组个数) 申明数组大小
附:length(数组名) 返回数组个数


******************申明API*****************
例如1
         自定义名 参数一          参数二传址          反回值   
function getthpid(jubing:Integer;var lpid: Integer ): Integer;
stdcall; external 'user32.dll' name 'GetWindowThreadProcessId';
调用方式           在哪个DLL          本名

例如2
参数自己定义结构传址

自己定义的结构
 type
   Snapshot32=record //记录类型的名称
   A1:Integer;
   A2:Integer;
   A3:Integer;
   A4:Integer;
   A5:Integer;
   A6:Integer;
   A7:Integer;
   A8:Integer;
   A9:Integer;
   A10:array[0..259]of char;
   end;
                                  参数二自己定义结构传址
function Process32First(x:Integer;VAR y: Snapshot32): Integer;
stdcall; external 'kernel32.dll' name 'Process32First';


**********************流程********************
if then   顺序结构

if then else 选择结构

fortodo  计次循环(小到大)

for 大 dwonto 小 do 计次循环(大到小)

while 条件 do 判断循环()


repeat 
until(条件)  循环判断()

break 跳出循环 
continue 到循环尾

流程没什么好说 很简单

******************组件的使用***************
listview 超级列表框

增加列表
var newitem:TListItem //定义TListItem类的一个变量

如果是循环增加 特别是第一项放到循环体里增加
newitem:=listview.Items.Add;  
newitem.Caption:='增加标题'; 
newitem.SubItems.Add('增加列2');列1是标题


ListView.Items.count总数<>0  ListView.Selected现行选中项<>nil

                          ListView.Selected.Caption 现行选中项标题
                          ListView.Selected.SubItems.Strings[0]); 现行选中项列2 列1是标题
                          ListView.Selected.SubItems.Strings[1]); 现行选中项列3 列1是标题
                          ListView.Selected.Delete()删除选中项

ListView.Items[0].caption 第一行标题
ListView.Items[0].SubItems.strings[0] 第1行第2列数据 列1是标题
ListView.Items[0].Delete() 删除第一行
原文地址:https://www.cnblogs.com/qq32175822/p/3144060.html