DELPHI基础教程读书笔记
设置字体的过程
Procedure TForm1.FontDlgApply(Sender:Tobject);
begin
Button1.Font:= FontDialog1.Font;
end;
该程序只有当用户按动About框的按钮或被About窗控制图标关闭窗口后,才会回到主窗体中,而不能与第一个窗体发生交互行为。这就是方法Show和ShowModal的主要不同之处
集合类型是一群相同类型元素的组合,这些类型必须是有限类型如整形、布尔型、字符型、枚举型和子界型。在检查一个值是否属于一个特定集合时,集合类型非常有用。下面的例程可以说明集合类型的用法:
type
Tvowels=set of Char;
var
Vowels:TVowels;
表达式Edit1.Text[1] in Vowels的结果是布尔型的,in是运算符,用来判断字母是否存在于集合中。
记录类型
记录是您的程序可以成组访问的一群数据的集合
type
TEmployee=record
Name : string[20];
YearHired:1990..2000;
Salsry: Double;
Position: string[20];
end;
使用with开域语句,其形式为
with 记录变量名 do 语句
在with语句中,引用记录变量名不再冠以记录变量名,以简化对记录中域的引用写法。
with PromotedEmployee do
begin
Name :='';
YearHired := 1993;
Salary := 2000.00
Position := 'editor';
end;
Object Pascal的库单元Unit
Units是常量、变量、数据类型、过程和函数的集合,而且能够被多个应用程序所共享
unit <库单元名称>
interface
uses <选择性的库单元列表>
{公有说明}
implementation
uses <选择性的库单元列表>
{私有说明}
{过程和函数的执行部分}
initialization {选择性的}
{选择性的初始化程序}
end.
建立与窗体无关的新库单元
如果您想在工程中建立一个和任何窗体无关的新库单元,可以现选用File|New Unit。这时一个新的库单元加入了工程,新库单元的代码如下:
unit Unit2;
interface
implementation
end.
当编译您的工程时,这个新加入的库单元会被编译为一个具有.DCU后缀的文件。这个新生成的文件是链接到工程的可执行文件上的机器代码。
相关文档:
屏幕的分辨率用这个
x=GetSystemMetrics(SM_CXSCREEN)
y=GetSystemMetrics(SM_CYSCREEN)
同上。
.而且获得屏幕上的像素好像应该使用
screen.pixelsperinch函数
int GetDeviceCaps(
  ......
TDXDraw DirectDraw 和 Direct3D 组件
TDXDIB 容纳DIB(设备无关位图,Device Independent Bitmap)的组件
TDXImageList 图片列表组件
TDX3D Direct3D 组件 (和TDXDraw一起使用)
TDXSound DirectSound 组件
TDXWave 容纳 Wave(波形音频 ......
delphi + java 的分布式应用思考
用delphi做界面层 java业务逻辑层 这样看上去很美吧?
具体的实现
java 做业务逻辑层 应该有多种选择 企业级的有EJB3, 轻量级的有spring
目前在学习ejb3,感觉用来做业务逻辑层真的很不错。spring还没有了解
界面层用delphi,RAD应该是delphi的优势。
关键的问题的如果把 ......
Delphi字符串加密解密函数
功能:字符串加密和解密
首先定义一个常量数组
const
XorKey:array[0..7] of Byte=($B2,$09,$AA,$55,$93,$6D,$84,$47); //字符串加密用
在程序里加入以下两个函数,
function Enc(Str:String):String;//字符加密函數 這是用的一個 ......
1、先用Const 定义一个常量,例如 const WM_MyMessage=WM_USER+$200;
2、在要实现的unit中定义一个私有方法
procedure doMyMessage(var msg:TMessage);message WM_MyMessage;
3、实现这个私有方法
procedure TForm1.doMyMessage(var msg:TMessage);
begin
//
if msg. ......