Mega Code Archive

 
Categories / Delphi / System
 

Handler örnekleri

unit Handlesu; interface uses SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls, Forms, Dialogs, DB, DBTables, StdCtrls, ExtCtrls, Grids, DBGrids; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5: TButton; Button6: TButton; Table1: TTable; DBGrid1: TDBGrid; DataSource1: TDataSource; Image1: TImage; Button7: TButton; Button8: TButton; Button9: TButton; ComboBox1: TComboBox; ListBox1: TListBox; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Table1AfterPost(DataSet: TDataset); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure Button8Click(Sender: TObject); procedure Button9Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation uses DbiProcs, DbiTypes; {$R *.DFM} procedure TForm1.Button1Click(Sender: TObject); begin FlashWindow(Handle, True) end; procedure TForm1.Button2Click(Sender: TObject); var R: TRect; begin R := Rect(0, 0, Width, Height); InvertRect(Canvas.Handle, R) end; procedure TForm1.Button3Click(Sender: TObject); begin { Should say Button3.Hide, but this shows } { access to the button's handle } ShowWindow((Sender as TButton).Handle, sw_Hide) end; procedure TForm1.Button4Click(Sender: TObject); begin { This sort of code often goes in AfterPost } { handlers for Paradox & dBASE tables as is } { done below } dbiSaveChanges(Table1.Handle) end; procedure TForm1.Table1AfterPost(DataSet: TDataset); begin dbiSaveChanges((DataSet as TTable).Handle) end; procedure TForm1.Button5Click(Sender: TObject); var Buffer: array[0..DbiMaxPathLen] of Char; begin DbiGetDirectory(Table1.Database.Handle, True, Buffer); Caption := 'DBDEMOS = ' + StrPas(Buffer) end; procedure TForm1.Button6Click(Sender: TObject); begin { Would be better to write: Image1.Picture.Icon.Assign(Application.Icon) but still... It shows a point } Image1.Picture.Icon.Handle := Application.Icon.Handle end; procedure TForm1.Button7Click(Sender: TObject); begin Font.Handle := CreateFont(-11, 0, 0, 0, fw_DontCare, 0, 0, 0, Ansi_CharSet, Out_Default_Precis, Clip_Default_Precis, Proof_Quality, Variable_Pitch or ff_DontCare, nil); end; procedure TForm1.Button8Click(Sender: TObject); begin SendMessage(ComboBox1.Handle, cb_ShowDropDown, 1, 0); { Can avoid using handle with Perform method } { ComboBox1.Perform(cb_ShowDropDown, 1, 0); } { Can avoid API stuff completely with VCL support } { which admittedly is not documented in Delphi 1 } { ComboBox1.DroppedDown := True; } end; procedure TForm1.Button9Click(Sender: TObject); begin { Again, Perform would be better here } SendMessage(ListBox1.Handle, lb_SetHorizontalExtent, 220, 0); end; end.