bsp;'''' then ShowMessage(''''Couldn''''t find '''' + Edit1.Text + ''''.'''') else ShowMessage(''''Found '''' + FileToFind + ''''.'''');
end; ## FileSearch, ShowMessage Example ---------------------------------------------------------- FindComponent 范例(1) type LogPal = record lpal : TLogPalette; dummy:Array[0..255] of TPaletteEntry; end;
procedure TForm1.SaveAsBmpClick(Sender: TObject); var Source: TComponent; SysPal : LogPal; tempCanvas: TCanvas; sourceRect, destRect: TRect; image2save: TImage; notUsed: HWND; begin Source := FindComponent(Edit1.Text); if (not Source is TControl) or ((not Source is TWinControl) and ((Source as TControl).Parent = nil)) then
begin Beep; ShowMessage(Edit1.Text + '''' is not a valid control.''''); Exit;
end;
tempCanvas := TCanvas.Create; try with Source as TControl do tempCanvas.Handle := GetDeviceContext(notUsed); image2save:=TImage.create(self); try with image2save do begin Height := (Source as TControl).Height; Width := (Source as TControl).Width; destRect := Rect(0,0,Width,Height); if Source is TWinControl then
sourceRect := destRect; else sourceRect := (Source as TControl).BoundsRect; Canvas.CopyRect(destRect,tempCanvas,sourceRect); SysPal.lPal.palVersion:=$300; SysPal.lPal.palNumEntries:=256; GetSystemPaletteEntries(tempCanvas.Handle,0,256,SysPal.lpal.PalpalEntry); Picture.Bitmap.Palette:= CreatePalette(Syspal.lpal); end; if SaveDialog1.Execute then
image2save.Picture.SaveToFile(SaveDialog1.FileName); finally image2save.Free; end; finally tempCanvas.Free; end; end; 范例(2) procedure TForm1.Button1Click(Sender: TObject);
var i: Integer; const NamePrefix = ''''MyEdit''''; begin for i := 1 to 20 do begin TEdit.Create(Self).Name := NamePrefix + IntToStr(i); with TEdit(FindComponent(NamePrefix + IntToStr(i))) do begin Left := 10; Top := i * 20; Parent := self; end; end; end; ========================================================= procedure TForm1.Button1Click(Sender: TObject); var A: Variant; begin A := VarArrayCreate([0, 4], varVariant); A[0] := 1; A[1] := 1234.5678; A[2] := ''''Hello world''''; A[3] := True; A[4] := VarArrayOf([1, 10, 100, 1000]); Edit1.Text :=(A[2]); { Hello world } Edit2.Text :=(A[4][2]); { 100 } end; procedure TForm1.Button2Click(Sender: TObject); var s: string; begin s := ''''Honest Abe Lincoln''''; Delete(s,8,4); Canvas.TextOut(10, 130, s); { ''''Honest Lincoln'''' } end;
procedure TForm1.Button3Click(Sender: TObject); var S: string; begin S := ''''ABCDEF''''; S := Copy(S, 2, 3); Edit1.Text :=s;{ ''''BCD'''' } end;
procedure TForm1.Button4Click(Sender: TObject); var S: string; begin S := Concat(''''ABC'''', ''''DEF''''); Edit1.Text :=s; { ''''ABCDE'''' } end;
procedure TForm1.Button5Click(Sender: TObject); var S: string; begin S := ''''Honest Lincoln''''; Insert(''''Abe '''', S, 8); Edit1.Text :=s; { ''''Honest Abe Lincoln'''' } end;
procedure TForm1.Button6Click(Sender: TObject); var S: string; begin S := ''''The Black Knight''''; Canvas.TextOut(10, 130, ''''String Length = '''' + IntToStr(Length(S)));{String Length = 16} Edit1.Text :=s;{The Black Knight} end;
procedure TForm1.Button7Click(Sender: TObject); var S: string; begin S := '''' 123.5''''; { Convert spaces to zeroes } while Pos('''' '''', S) > 0 do S[Pos('''' '''', S)] := ''''0''''; Edit1.Text :=s; {000123.5} end; =========================================================================== 数学函数 (Arithmetic Routines)
Unit: System =========================================================================== Abs 传回叁数的绝对值。 function Abs(X); ArcTan 传回正切函数的反函数值。 function ArcTan(X: Real): Real; Cos 传回馀弦函数值 function Cos(X: Real): Real; (X 以弧度为单位)。 Exp 传回自然指数值。 function Cos(X: Real): Real; Frac 传回叁数的小数部份。 function Frac(X: Real): Real; Int 传回叁数的整数部份。 function Int(X: Real): Real; Ln 传回自然对数值。 function Ln(X: Real): Real; Pi 传回圆周率π的值。 function Pi: Real; Sin 传回正弦函数值。 function Sin(X: Real): Real; Sqr 传回叁数的平方。 function Sqr(X: Real): (Real); Sqrt 传回叁数的平方根。 function Sqrt(X: Real): Real; =========================================================================== 控制台函数 (Console Routines) =========================================================================== Unit: WinCrt 函数名称 函数说明 函数语法 =========================================================================== AssignCrt 将文字档连结到一个控制台视窗。&nb << 上一页 [21] [22] [23] [24] [25] [26] [27] [28] [29] [30] ... 下一页 >> |