Programlama yapalım ve Öğrenelim. - Delphi Eğitim120
  Ana Sayfa
  .NET Eğitim Notları
  Visual C# .NET Örnek Kodları
  VisualBasic.NET Örnek Kodları
  J# Örnekleri
  ASP.NET Örnek Kodları
  Delphi Eğitim
  => Delphi Eğitim1
  => Delphi Eğitim2
  => Delphi Eğitim3
  => Delphi Eğitim4
  => Delphi Eğitim5
  => Delphi Eğitim6
  => Delphi Eğitim7
  => Delphi Eğitim8
  => Delphi Eğitim9
  => Delphi Eğitim10
  => Delphi Eğitim11
  => Delphi Eğitim13
  => Delphi Eğitim14
  => Delphi Eğitim15
  => Delphi Eğitim16
  => Delphi Eğitim17
  => Delphi Eğitim18
  => Delphi Eğitim19
  => Delphi Eğitim20
  => Delphi Eğitim21
  => Delphi Eğitim22
  => Delphi Eğitim23
  => Delphi Eğitim24
  => Delphi Eğitim25
  => Delphi Eğitim26
  => Delphi Eğitim27
  => Delphi Eğitim28
  => Delphi Eğitim29
  => Delphi Eğitim30
  => Delphi Eğtim31
  => Delphi Eğitim32
  => Delphi Eğitim33
  => Delphi Eğitim34
  => Delphi Eğitim35
  => Delphi Eğitim36
  => Delphi Eğitim37
  => Delphi Eğitim38
  => Delphi Eğitim39
  => Delphi Eğitim40
  => Delphi Eğitim41
  => Delphi Eğitim42
  => Delphi Eğitim43
  => Delphi Eğitim44
  => Delphi Eğitim45
  => Delphi Eğitim46
  => Delphi Eğitim47
  => Delphi Eğitim48
  => Delphi Eğitim49
  => Delphi Eğitim50
  => Delphi Eğitim51
  => Delphi Eğitim52
  => Delphi Eğitim53
  => Delphi Eğitim54
  => Delphi Eğitim55
  => Delphi Eğitim56
  => Delphi Eğitim57
  => Delphi Eğitim58
  => Delphi Eğitim59
  => Delphi Eğitim60
  => Delphi Eğitim61
  => Delphi Eğitim62
  => Delphi Eğitim63
  => Delphi Eğitim64
  => Delphi Eğitim65
  => Delphi Eğitim66
  => Delphi Eğitim67
  => Delphi Eğitim68
  => Delphi Eğitim69
  => Delphi Eğitim70
  => Delphi Eğitim71
  => Delphi Eğitim72
  => Delphi Eğitim73
  => Delphi Eğitim74
  => Delphi Eğitim75
  => Delphi Eğitim76
  => Delphi Eğitim77
  => Delphi Eğitim78
  => Delphi Eğitim79
  => Delphi Eğitim80
  => Delphi Eğitim81
  => Delphi Eğitim82
  => Delphi Eğitim83
  => Delphi Eğitim84
  => Delphi Eğitim85
  => Delphi Eğitim86
  => Delphi Eğitim87
  => Delphi Eğitim88
  => Delphi Eğitim89
  => Delphi Eğitim90
  => Delphi Eğitim91
  => Delphi Eğitim92
  => Delphi Eğitim93
  => Delphi Eğitim94
  => Delphi Eğitim95
  => Delphi Eğitim96
  => Delphi Eğitim97
  => Delphi Eğitim98
  => Delphi Eğitim99
  => Delphi Eğitim100
  => Delphi Eğitim101
  => Delphi Eğitim102
  => Delphi Eğitim103
  => Delphi Eğitim104
  => Delphi Eğitim105
  => Delphi Eğitim106
  => Delphi Eğitim107
  => Delphi Eğitim108
  => Delphi Eğitim109
  => Delphi Eğitim110
  => Delphi Eğitim111
  => Delphi Eğitim112
  => Delphi Eğitim113
  => Delphi Eğitim114
  => Delphi Eğitim115
  => Delphi Eğitim116
  => Delphi Eğitim117
  => Delphi Eğitim118
  => Delphi Eğitim119
  => Delphi Eğitim120
  => Delphi Eğitim121
  => Delphi Eğitim122
  => Delphi Eğitim123
  => Delphi Eğitim124
  => Delphi Eğitim125
  => Delphi Eğitim126
  => Delphi Eğitim127
  => Delphi Eğitim128
  => Delphi Eğitim129
  => Delphi Eğitim130
  => Delphi Eğitim131
  => Delphi Eğitim132
  => Delphi Eğitim133
  => Delphi Eğitim134
  => Delphi Eğitim135
  => Delphi Eğitim136
  => Delphi Eğitim137
  => Delphi Eğitim138
  => Delphi Eğitim139
  => Delphi Eğitim140
  => Delphi Eğitim141
  => Delphi Eğitim142
  => Delphi Eğitim143
  => Delphi Eğitim144
  => Delphi Eğitim145
  => Delphi Eğitim146
  => Delphi eğitim147
  => Delphi Eğitim148
  => Delphi Eğitim149
  => Delphi Eğitim150
  => Delphi Eğitim151
  => Delphi Eğitim152
  => Delphi Eğitim153
  => Delphi Eğitim154
  => Delphi Eğitim155
  => Delphi Eğitim156
  => Delphi Eğitim157
  => Delphi Eğitim158
  => Delphi Eğitim159
  => Delphi Eğitim160
  => Delphi Eğitim161
  => Delphi Eğitim162
  => Delphi Eğitim164
  => Delphi Eğitim165
  => Delphi Eğitim166
  => Delphi Eğitim167
  => Delphi Eğitim168
  => Delphi Eğitim169
  => Delphi Eğitim170
  => Delphi Eğitim171
  => Delphi Eğitim172
  => Delphi Eğitim173
  => Delphi Eğitim174
  => Delphi Eğitim175
  => Delphi Eğitim176
  => Delphi Eğitim177
  => Delphi Eğitim178
  => Delphi Eğitim179
  => Delphi Eğitim180
  => Delphi Eğitim181
  => Delphi Eğitim182
  => Delphi Eğitim183
  => Delphi Eğitim184
  => Delphi Eğitim185
  => Delphi Eğitim186
  => Delphi Eğitim187
  => Delphi Eğitim188
  => Delphi Eğitim189
  => Delphi Eğitim190
  => Delphi Eğitim191
  => Delphi Eğitim192
  => Delphi Eğitim193
  => Delphi Eğitim194
  => Delphi Eğitim195
  => Delphi Eğitim196
  => Delphi Eğitim197
  => Delphi Eğitim198
  => Delphi Eğitim199
  => Delphi Eğitim200
  => Delphi Eğitim201
  => Delphi Eğitim202
  => Delphi Eğitim203
  => Delphi Eğitim204
  => Delphi Eğitim205
  => Delphi Eğitim206
  => Delphi Eğitim207
  => Delphi Eğitim208
  => Delphi Eğitim209
  => Delphi Eğitim210
  => Delphi Eğitim211
  => Delphi Eğitim212
  => Delphi Eğitim213
  => Delphi Eğitim214
  => Delphi Eğitim215
  => Delphi Eğitim216
  => Delphi Eğitim217
  => Delphi Eğitim218
  => Delphi Eğitim219
  => Delphi Eğitim220
  => Delphi Eğitim221
  => Delphi Eğitim222
  => Delphi Eğitim223
  => Delphi Eğitim224
  => Delphi Eğitim225
  => Delphi Eğitim226
  => Delphi Eğitim227
  => Delphi Eğitim228
  => Delphi Eğitim229
  => Delphi Eğitim230
  => Delphi Eğitim231
  => Delphi Eğitim232
  => Delphi Eğitim233
  => Delphi Eğitim234
  => Delphi Eğitim235
  => Delphi Eğitim236
  => Delphi Eğitim237
  => Delphi Eğitim238
  => Delphi Eğitim239
  => Delphi Eğitim240
  => Delphi Eğitim241
  => Delphi Eğitim242
  İletişim

Dosya Kopyalama (3)

 

procedure CopyFile(FromFileName, ToFileName: string);

var

FromFile, ToFile: File;

begin

AssignFile(FromFile, FromFileName); { Assign FromFile to FromFileName }

AssignFile(ToFile, ToFileName); { Assign ToFile to ToFileName }

Reset(FromFile); { Open file for input }

try

Rewrite(ToFile); { Create file for output }

try

if LZCopy(TFileRec(FromFile).Handle, TFileRec(ToFile).Handle) < 0

then

raise EInOutError.Create('Error using LZCopy')

finally

CloseFile(ToFile); { Close ToFile }

end;

finally

CloseFile(FromFile); { Close FromFile }

end;

end;

 

Directory Adı değiştirme

 

SysUtils unitesinin içindeki RenameFile function bu işi görmektedir.

 

Treeview componentinin durumunu kaydetme ve gösterme

 

Kaydetmek için

 

TreeView.SaveToFile('Dosya.adı');

 

Dosyayı açmak için

 

TreeView.LoadFromFile('Dosya.adı');

 

Dosyayı yanlızca okumak (read only) şeklinde açma

 

AssignFile(F, Dosya);

FileMode := 0; (read only modunda açmak}

Reset(F);

.

.

.

CloseFile(F);

 

Açılan dosyanın tarih ve zamanını ayarlamak

 

 

var

f: file;

begin

Assign(f, DirInfo.Name);

Reset(f);

SetFTime(f, Time);

Close(f);

end;

 

Deltree

 

{$I-} {$I+}

 

procedure delTree (DirName: string);

var

FileSearch: SearchRec;

begin

 

chDir (DirName);

FindFirst ('*.*', Directory, FileSearch);

while (DosError = 0) do begin

if (FileSearch.name <> '.') AND (FileSearch.name <> '..') AND

( (FileSearch.attr AND Directory) <> 0)

then begin

if DirName[length(DirName)] = '' then

delTree (DirName+FileSearch.Name)

else

delTree (DirName+''+FileSearch.Name);

ChDir (DirName);

end;

FindNext (FileSearch)

end;

 

 

FindFirst ('*.*', AnyFile, FileSearch);

while (DosError = 0) do begin

if (FileSearch.name <> '.') AND (FileSearch.name <> '..') then

Remove (workdir);

end;

FindNext (FileSearch)

end;

rmDir (DirName)

end;

 

Dbgrid'de (Ctrl-Del diyince) dosya silmesini engelleme

 

if (ssctrl in shift) and (key=vk_delete) then

begin

key:=0;

end;

 

String'i renk'e renk'i stringe çevirme

 

Uses graphics;

form1.Color:=stringtocolor('121');

label1.caption:= ColorToString(form1.color);

 

Mouse'un yerini değiştirmek

 

randomize;

SetCursorPos(random(100),random(100));

 

ComboBox'ın aşağıya listelemesinin farklı bir yolu (DropComboBox)

 

SendMessage(ComboBox1.handle , 1039, 1, 0);

 

Başlığı Gizlemek ve Göstermek

 

Procedure HideTitlebar;

Var

Save : LongInt;

Begin

If form1.BorderStyle=bsNone then Exit;

Save:=GetWindowLong(form1.Handle,gwl_Style);

If (Save and ws_Caption)=ws_Caption then Begin

Case form1.BorderStyle of

bsSingle,

bsSizeable : SetWindowLong(form1.Handle,gwl_Style,Save and

(Not(ws_Caption)) or ws_border);

bsDialog : SetWindowLong(form1.Handle,gwl_Style,Save and

(Not(ws_Caption)) or ds_modalframe or ws_dlgframe);

End;

form1.Height:=form1.Height-getSystemMetrics(sm_cyCaption);

form1.Refresh;

End;

end;

 

Procedure ShowTitlebar;

Var

Save : LongInt;

begin

If form1.BorderStyle=bsNone then Exit;

Save:=GetWindowLong(form1.Handle,gwl_Style);

If (Save and ws_Caption)<>ws_Caption then Begin

Case form1.BorderStyle of

bsSingle,

cLabel1.Caption := 'Control'

else

if HiWord(GetKeyState(VK_MENU)) <> 0 then

Label1.Caption := 'Alt'

else

Label1.Caption := 'None';

end;

 

Formu taskbardan gizleme

 

ShowWindow(Application.Handle, SW_HIDE);

 

Silinmiş Dosyaları gösterme (DBF);

 

type

TForm1 = class(TForm)

Table1: TTable;

DataSource1: TDataSource;

DBGrid1: TDBGrid;

DBNavigator1: TDBNavigator;

CheckBox1: TCheckBox;

procedure CheckBox1Click(Sender: TObject);

public

procedure ShowDeleted(Table: TTable; ShowDeleted: Boolean);

end;

 

var

Form1: TForm1;

 

implementation

 

uses DBITYPES, DBIERRS, DBIPROCS;

 

{$R *.DFM}

 

procedure TForm1.ShowDeleted(Table: TTable; ShowDeleted: Boolean);

var

rslt: DBIResult;

szErrMsg: DBIMSG;

begin

Table.DisableControls;

try

Check(DbiSetProp(hDBIObj(Table.Handle), curSOFTDELETEON,

LongInt(ShowDeleted)));

finally

Table.EnableControls;

end;

Table.Refresh;

end;

 

procedure TForm1.CheckBox1Click(Sender: TObject);

begin

ShowDeleted(Table1, CheckBox1.Checked);

end;

 

end.

 

Form hakkında kısa bilgi

 

Form1.Show; {Formu göster}

Form1.Showmodal { Formu showmodal olarak göster (Showmodal iken başka hiçbir forma ulaşılamaz) }

myForm.Hide; {Formmu gizle }

myForm.Free; {Formu sil }

 

 

 

Formu şeffaf hale getirilmesi

 

OnCreate olayına Brush.Style:=bsClear; yazmanız yeterli.

 

ESC tuşuyla programdan çıkma

 

OnKeyPress olayına if Key = #27 then halt; yazın.

 

Bir Resim Dosyası Açıp İçine Çizim Yapma

 

var

Resim: TBitmap;

 

 

Resim := TBitmap.Create;

with Resim do

try

Width := 100;

Height := 100;

with Canvas do

begin

Rectangle(0, 0, 100, 100);

MoveTo(0, 0);

LineTo(100, 100);

MoveTo(0, 100);

LineTo(100, 0);

end;

SaveToFile('test.bmp')

finally

Free;

end;

 

Asla Yazı Kutusundan Çıkamazsın

 

procedure TForm1.Edit1Exit(Sender: TObject);

begin

showmessage('Asla yazı kutusundan çıkamassın');

postmessage(handle,WM_NEXTDLGCTL,0,0);

postmessage(handle,WM_NEXTDLGCTL,1,0);

end;

 

Formun Boyutlarını Sabitleme

 

unit Unit1;

 

interface

 

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs;

 

 

type

TForm1 = class(TForm)

private

{ Private declarations }

public

procedure WMGetMinMaxInfo( var Message :TWMGetMinMaxInfo ); message WM_GETMINMAXINFO;

{ Public declarations }

end;

 

var

Form1: TForm1;

 

implementation

 

{$R *.DFM}

 

procedure TForm1.WMGetMinMaxInfo( var Message :TWMGetMinMaxInfo );

begin

with Message.MinMaxInfo^ do

begin

ptMaxSize.X := 200;

ptMaxSize.Y := 200;

ptMaxPosition.X := 99;

ptMaxPosition.Y := 99;

ptMinTrackSize.X := 100;

 

ptMinTrackSize.Y := 100;

ptMaxTrackSize.X := 300;

ptMaxTrackSize.Y := 300;

end;

Message.Result := 0;

inherited;

end;

 

 

end.

 

Windows'a True Type Font Ekleme

 

uses Registry;

procedure TForm1.Button1Click(Sender: TObject);

var

reg: TRegistry;

b : bool;

begin CopyFile('C:DOWNLOADFP000100.TTF', 'C:WINDOWSFONTSFP000100.TTF', b);

reg := TRegistry.Create; reg.RootKey := HKEY_LOCAL_MACHINE;

reg.LazyWrite := false; reg.OpenKey('SoftwareMicrosoftWindowsCurrentVersionFonts', false); reg.WriteString('TESTMICR (TrueType)','FP000100.TTF');

reg.CloseKey; reg.free;

AddFontResource('c:windowsfontsFP000100.TTF'); SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);

RemoveFontResource('c:windowsfontsFP000100.TTF'); SendMessage(HWND_BROADCAST, WM_FONTCHANGE, 0, 0);

end;

 

Dosya Taşıma

MoveFile('C:Sourcesourcefile.txt', 'C:Destdestfile.txt');

 

Trim Fonksiyonunun açılımı

 

unit StrFunc;

interface

procedure LTrim(var s : string);

procedure RTrim(var s : string)

;procedure Trim(var s : string);

implementation

{$R *.DFM}

procedure LTrim(var s : string);

begin

while ((length(s) > 0) and (s[1] = #32)) do Delete(s, 1, 1);

end;

procedure RTrim(var s : string);

begin

while ((length(s) > 0) and (s[Length(s)] = #32)) do Delete(s, Length(s), 1);

end;

procedure Trim(var s : string);

begin

LTrim(s); RTrim(s);

end;

 

Screen Capture Programı (Ekran Çalma)

 

Bir tane image componenti eklemek zorundasınız.

 

procedure TForm1.FormCreate(Sender: TObject);

var

DCDesk: HDC;

 

begin

DCDesk:=GetWindowDC(GetDesktopWindow);

BitBlt(Image1.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,DCDesk, 0, 0,SRCCOPY);

ReleaseDC(GetDesktopWindow, DCDesk);

end;

 

Sağa yada Sola hizalama function'u

 

function hiza(sagsol,yer:string;sayi:integer):string;

var

i,bosluk,uzunluk:integer;

begin

trim(yer); //Boşlukları temizle

uzunluk:=length(yer); //Verilen stringin uzunluğunu öğren

bosluk:=sayi-uzunluk; //Verilen sayıdan uzunluğu çıkar

if sagsol='sag' then begin //Sağamı solamı yaslancağını öğren

for i:=1 to bosluk do begin //Fark kadar sağa boşluk ekle

yer:=' '+yer; //Boşluk ekle

end;

result:=yer; //Sonucu bildir

exit;

end;

if sagsol='sol' then

begin

trim(yer);

for i:=1 to bosluk do begin //Fark kadar sola ekle

yer:=yer+' ';

end;

result:=yer; //Sonucu bildir

exit;

end;

 

Sayıyı virgüllü yazma functionu

 

Bunun için forma birtana label componenti yerleştirin ve visible özeliğini false yapın.

 

function frmt(yer:string):string;

var

s:string;

uzunluk:integer;

kalan,k,dgr:integer;

begin

s:='.';

uzunluk:=Length(yer);

dgr:=uzunluk div 3;

kalan:=uzunluk - (dgr*3);

label1.caption:=inttostr(kalan);

if yer='0' then

begin

yer:='0,';

result:=yer;

exit;

end;

if label1.caption<>'0' then

begin

insert(s,yer,kalan+1);

for k:=1 to dgr do begin

if k=dgr then begin

insert(',',yer,(kalan +(k*3)+k+1));

result:=yer;

exit;

end;

insert(s,yer,(kalan +(k*3)+k+1));

end;

end;

 

Comp değerindeki bir sayıyı string yapma

 

function Comp2Str(N: Comp): String;

var

TS: String;

begin

Str(N:0:0, TS);Comp2Str := TS;

end;

 

Dosya açılış yolları

 

Windows programının açılışı

WinExec('C:WINDOWSNOTEPAD.EXE', SW_SHOWNORMAL);

 

Komut satırı ile birlikte :

WinExec('C:WINDOWSNOTEPAD.EXE C:WINDOWSWIN.INI', SW_SHOWNORMAL);

 

Pop Up dos kutusuyla :

WinExec('COMMAND.COM', SW_SHOWNORMAL);

 

Normal bir dos programının komutla açılışı

WinExec('COMMAND.COM /C DIR *.*', SW_SHOWNORMAL);

 

Dekstop'ı refresh etmek

 

procedure TForm1.Button1Click(Sender: TObject);

begin

SendMessage(FindWindow('Progman', 'Program Manager'), WM_COMMAND,$A065, 0);

end;

 

Programın windows'la birlikte açılması

 

uses Registry, {For Win32}

IniFiles; {For Win16}

{$IFNDEF WIN32}

const

MAX_PATH = 144;

{$ENDIF}

{For Win32}

procedure TForm1.Button1Click(Sender: TObject);

var

reg: TRegistry;

begin

reg := TRegistry.Create;

reg.RootKey := HKEY_LOCAL_MACHINE;

reg.LazyWrite := false; reg.OpenKey('SoftwareMicrosoftWindowsCurrentVersionRun', false); reg.WriteString('My App', Application.ExeName);

reg.CloseKey;

reg.free;

end;

 

Formun ara çubuğunu gizleme

 

procedure TForm1.FormCreate(Sender: TObject);

begin

SetWindowLong(Form1.Handle,GWL_STYLE,GetWindowLong(Handle,GWL_STYLE) and not WS_CAPTION);

Height := ClientHeight;

end;

 

Flash icon

 

var Flash : bool;

procedure TForm1.Timer1Timer(Sender: TObject);

begin

FlashWindow(Form1.Handle, Flash);

FlashWindow(Application.Handle, Flash); Flash := not Flash;

end;

procedure TForm1.FormCreate(Sender: TObject);

begin

Flash := False;

end;

 

Taskbar'ın handle sayısı

 

hTaskbar := FindWindow('Shell_TrayWnd', Nil );

 

Exe yada Dll'deki iconların alınması

Uses shellapi;

procedure TForm1.FormCreate(Sender: TObject);

var TheIcon: TIcon;

begin TheIcon := TIcon.Create;

TheIcon.Handle := ExtractIcon(hInstance,'C:dosyadosya.EXE',0);

image1.picture.Icon:=Theicon;

end;

 

Windows ekranına çizim yapma

 

procedure TForm1.Button1Click(Sender: TObject);

var dc : hdc;

begin dc := GetDc(0);

MoveToEx(Dc, 0, 0, nil);

LineTo(Dc, 300, 300);

ReleaseDc(0, Dc);

end;

 

 

Edit1'deki yazıyı edit2'ye GetTextBuf yolluyla aktarma

 

procedure TForm1.Button1Click(Sender: TObject);

var

Buffer: PChar;

Size: Byte;

begin

Size := Edit1.GetTextLen; {Get length of string in Edit1}

Inc(Size); {Add room for null character}

GetMem(Buffer, Size); {Creates Buffer dynamic variable}

Edit1.GetTextBuf(Buffer,Size); {Puts Edit1.Text into Buffer}

Edit2.Text := StrPas(Buffer); {Converts Buffer to a Pascal-style string]

FreeMem(Buffer, Size); {Frees memory allocated to Buffer}

 

end;

 

Form1'in aynısını printerden çıkartma

 

Form1.Print;

 

O anki sürücünün kapasitesini ve sürücüdeki boş yer miktarını bulmak;

 

DiskFree(0) //o anki sürücüdeki boş yer miktarını byte cinsinden döndürür.

DiskSize(0) //o anki sürücünün kapasitesini byte cinsinden döndürür.

DiskSize(0) div 1024 //o anki sürücünün kapasitesini KB cinsinden döndürür.

 

Bir menü öğesinin enabled özelliğini false yapmak;

 

mainmenu1.items[0].items[1].enabled:=False;

 

Listbox veya Combobox'ta seçili bir veya birden fazla öğeyi seçilmemiş duruma getirmek için;

 

Listbox1.itemindex:=-1;

 

Listbox, Combobox ve Memo'ya bir seferde ekleme yapmak;

 

Listbox1.items.SetText('aaa'#13'bbb'#13'ccc');

Memo1.Lines.SetText('aaa'#13'bbb'#13'ccc');

 

Harddiskin seri numarasının bulunması;

 

procedure TForm1.Button1Click(Sender: TObject);

 

var

 

  VolumeSerialNumber : DWORD;

 

  MaximumComponentLength : DWORD;

 

  FileSystemFlags : DWORD;

 

  SerialNumber : string;

 

begin

 

  GetVolumeInformation('C:',nil,0,@VolumeSerialNumber,MaximumComponentLength,FileSystemFlags,nil,                       0);

 

  SerialNumber := IntToHex(HiWord(VolumeSerialNumber), 4) +  '-' +IntToHex(LoWord(VolumeSerialNumber), 4);

 

  Memo1.Lines.Add(SerialNumber);

 

end;

 

Bir string'in başındaki ve sonundaki boşlukları atmak için;

 

Trim(string)

 

TrimLeft (string)  //stringin sadece başındaki boşlukları atmak için

 

TrimRight (string) //stringin sadece sonundaki boşlukları atmak için

 

Şifreli bir table için programın şifre istememesi için;

 

Table'ın Active özelliğini False yapın ve Form'un OnCreate olayına aşağıdaki kodu ekleyin

 

Session.AddPassword('şifre');

 

Table1.Active:=True;

 

Pencereyi minimize etmek;

 

Application.Minimize; //taskbar'a minimize

CloseWindow(handle)

WindowState := wsMinimized;

 

Windows'u kapatmak veya yeniden başlatmak(reboot);

 

var

 

  i:dword;

 

begin

 

  ExitWindowsEx(EWX_SHUTDOWN); //yeniden başlatmak için EWX_REBOOT

 

end;

 

Help menüsünden About kısmına girin. Alt tuşuna basılı tutarak TEAM veya DEVELOPERS yazın. Delphi'yi geliştirenlerin isimlerini görebilirsiniz. Database Desktop'tada Help menüsünden About kısmına girin ve delphi yazın.

 

ico'dan bmp'ye çevirme;

 

var

 

  Icon : TIcon;

 

  Bitmap : TBitmap;

 

begin

 

  Icon := TIcon.Create;

 

  Bitmap := TBitmap.Create;

 

  Icon.LoadFromFile('c:picture.ico');

 

  Bitmap.Width := Icon.Width;

 

  Bitmap.Height := Icon.Height;

 

  Bitmap.Canvas.Draw(0, 0, Icon );

 

  Bitmap.SaveToFile('c:picture.bmp');

 

  Icon.Free;

 

  Bitmap.Free;

 

end;

 

CD-Rom sürücüyü açmak ve kapamak;

 

uses kısmına MMSystem unitini ekleyin.

 

mciSendString('Set cdaudio door open wait', nil, 0, handle); //aç

 

mciSendString('Set cdaudio door closed wait', nil, 0, handle); //kapa

 

CapsLock ve Numlock tuşlarını açıp-kapama;

 

procedure TMyForm.Button1Click(Sender: TObject);

 

Var

 

  KeyState : TKeyboardState;

 

begin

 

  GetKeyboardState(KeyState);

 

  if (KeyState[VK_CAPITAL] = 0) then

 

      KeyState[VK_CAPITAL] := 1

 

  else

 

      KeyState[VK_CAPITAL] := 0;

 

  SetKeyboardState(KeyState);

 

end;

 

Numlock tuşu için VK_CAPITAL yerine VK_NUMLOCK yazınız.

 

Menü'ye bitmap (resim) ekleme;

 

procedure TForm1.FormCreate(Sender: TObject);

 

var

 

  Bmp1 : TPicture;

 

begin

 

  Bmp1 := TPicture.Create;

 

  Bmp1.LoadFromFile('c:denemeturkey.bmp');

 

  SetMenuItemBitmaps( deneme1.Handle,

 

                      0,

 

                      MF_BYPOSITION,

 

                      Bmp1.Bitmap.Handle,

 

                      Bmp1.Bitmap.Handle);

 

end;

 

Alt + Tab ve Ctrl + Esc tuşlarının kullanılmaz hale getirilmesi;

 

var

 

  OldVal : LongInt;

 

begin

 

  SystemParametersInfo (97, Word (True), @OldVal, 0)

 

  //Word(False) ile kullanırsanız tuşları tekrar kullanabilirsiniz.

 

Windows ve System klasörlerinin bulunması

 

procedure TForm1.Button1Click(Sender: TObject);

 

var

 

  a : Array[0..144] of char;

 

begin

 

  GetWindowsDirectory(a, sizeof(a));

 

  ShowMessage(StrPas(a));

 

  GetSystemDirectory(a, sizeof(a));

 

  ShowMessage(StrPas(a));

 

end;

 

 

 

Speakerdan Beep sesi çıkartma

 

MessageBeep(word(-1));

 

 

 

Belgeler menüsüne bir dosya ekleme

 

uses kısmına ShlOBJ unitini ekleyin;

 

procedure TForm1.Button1Click(Sender: TObject);

 

var

 

  s : string;

 

begin

 

  s := 'C:DownLoaddeneme.html';

 

  SHAddToRecentDocs(SHARD_PATH, pChar(s));

 

end;

 

 

 

Belgeler menüsünü temizleme

 

uses kısmına ShlOBJ unitini ekleyin;

 

SHAddToRecentDocs(SHARD_PATH, nil);

 

 

 

Bir web adresini açma

 

uses kısmına Shellapi unitini ekleyin;

 

ShellExecute(Handle,

 

            'open',

 

            'http://emreoz.cjb.net',

 

             nil,

 

             nil,

 

             sw_ShowMaximized);

 

 

 

Bir DOS programını çalıştırma ve çalışması bitince penceresini kapatma

 

WinExec("command.com /c progdos.exe",sw_ShowNormal); //progdos.exe çalıştırılıyor.

 

//eğer ikinci paremetreyi sw_Hide yaparsanız kullanıcı programın çalıştığını görmez.

 

 

 

Uygulamanızın Görev Çubuğundaki butonunu gizleme

 

Uygulamanızın Görev Çubuğundaki butonunu gizlemek için programınızın ana formunun OnCreate olayına aşağıdaki kodu yazın;

 

SetWindowLong(Application.Handle,GWL_EXSTYLE, WS_EX_TOOLWINDOW);

 

 

 

Ekran koruyucusunu kapatmak ve açmak

 

//kapatmak için

 

SystemParametersInfo(SPI_SETSCREENSAVEACTIVE,

 

                     0,

 

                     nil,

 

                     0);

 

//açmak için

 

SystemParametersInfo(SPI_SETSCREENSAVEACTIVE,

 

                     1,

 

                     nil,

 

                     0);

 

 

 

Alt+F4 tuş kombinasyonuyla programın kapanmaması için

 

Formun OnCreate olayına;

 

KeyPreview := true;

 

Formun OnKeyDown olayına;

 

if ((ssAlt in Shift) and (Key = VK_F4)) then

 

     Key := 0;

 

 

 

Hareketli İmleç(animated cursor)leri kullanma

 

procedure TForm1.Button1Click(Sender:TObject);

 

var

 

  h : THandle;

 

begin

 

  h := LoadImage(0,

 

                 'C:TheWallMagic.ani',

 

                 IMAGE_CURSOR,

 

                 0,

 

                 0,

 

                 LR_DEFAULTSIZE or

 

                 LR_LOADFROMFILE);

 

  if h = 0 then ShowMessage('Cursor not loaded') else begin

 

    Screen.Cursors[1] := h;

 

    Form1.Cursor := 1;

 

  end;

 

end;

 

 

 

Windows lisans bilgilerinin (isim ve şirket) bulunması

 

uses kısmına Registry unitini ekleyin;

 

procedure TForm1.Button1Click(Sender:TObject);

 

var

 

  reg: TRegIniFile;

 

begin

 

  reg := TRegIniFile.create('SOFTWAREMICROSOFTMS SETUP (ACME)');

 

  Memo1.Lines.Add(reg.ReadString('USER INFO',

 

                                 'DefName',

 

                                 'Emre ÖZ'));

 

  Memo1.Lines.Add(reg.ReadString('USER INFO',

 

                                 'DefCompany',

 

                                 'Bilgisayar Bilimleri Müh.'));

 

  reg.free;

 

end;

 

 

 

Çok Satırlı İpucu

 

procedure TForm1.FormCreate(Sender: TObject);

 

begin

 

  SpeedButton1.Hint:='Çok satırlı ipucunu '+chr(13)+

 

                     'mutlaka denemelisiniz '+chr(13)+

 

                     'çok güzel';

 

end;

 

 

 

Bir klasörü ve onun altındaki tüm dosyaları ve klasörleri silme

 

Ancak salt okunur (read only) özelliği olan ve kullanımda olan dosyalar silinmez.

 

procedure TForm1.Button1Click(Sender: TObject);

 

var

 

  DirInfo: TSearchRec;

 

  r : Integer;

 

begin

 

  r := FindFirst('C:DownloadTest*.*', FaAnyfile, DirInfo);

 

  while r = 0 do  begin

 

    if ((DirInfo.Attr and FaDirectory <> FaDirectory) and

 

        (DirInfo.Attr and FaVolumeId <> FaVolumeID)) then

 

      if DeleteFile(pChar('C:Downloadtest' + DirInfo.Name))

 

         = false then

 

       ShowMessage('C:Downloadtest'+DirInfo.Name+' silinemiyor!!!');

 

    r := FindNext(DirInfo);

 

  end;

 

  SysUtils.FindClose(DirInfo);

 

  if RemoveDirectory('C:DownloadTest') = false then

 

    ShowMessage('C:Downloadtest klasörü silinemiyor!!!');

 

end;

 

 

 

Başlat butonunu gizlemek veya kullanılmaz hale getirmek

 

procedure TForm1.Button1Click(Sender: TObject);

 

var

 

  Rgn : hRgn;

 

begin

 

  // Başlat butonunu gizle

 

  Rgn := CreateRectRgn(0, 0, 0, 0);

 

  SetWindowRgn(FindWindowEx(FindWindow('Shell_TrayWnd', nil),

 

                                       0,

 

                                      'Button',

 

                                       nil),

 

                                       Rgn,

 

                                       true);

 

end;

 

 

 

procedure TForm1.Button2Click(Sender: TObject);

 

begin

 

  //Gizlenen Başlat butonunu eski haline döndürmek için

 

  SetWindowRgn(FindWindowEx(FindWindow('Shell_TrayWnd', nil),

 

                                       0,

 

                                      'Button',

 

                                       nil),

 

                                       0,

 

                                       true);

 

end;

 

 

 

procedure TForm1.Button3Click(Sender: TObject);

 

begin

 

  //Başlat butonunu kullanılmaz yap

 

  EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil),

 

                                       0,

 

                                       'Button',

 

                                       nil),

 

                                       false);

 

end;

 

 

 

procedure TForm1.Button4Click(Sender: TObject);

 

begin

 

  //Kullanılmaz yapılan Başlat butonunu eski haline getirmek için

 

  EnableWindow(FindWindowEx(FindWindow('Shell_TrayWnd', nil),

 

                                       0,

 

                                       'Button',

 

                                       nil),

 

                                       true);

 

end;

 

 

 

Windows Gezginini istediğiniz bir klasörle açma

 

uses kısmına Shellapi unitini ekleyin.

 

 

 

ShellExecute(0,

 

            'explore',

 

            'C:WINDOWS',  //açmak istediğiniz dizin

 

             nil,

 

             nil,

 

             SW_SHOWNORMAL);

 

 

 

Duvar kağıdını değiştirmek

 

var

 

  s: string;

 

begin

 

  s := 'c:windowsathena.bmp';

 

  SystemParametersInfo(SPI_SETDESKWALLPAPER, 0, PChar(s),0);

 

 

 

Form'un arka kısmına bir resmi döşemek

 

Bitmap: TBitmap;

 

 

 

procedure TForm1.FormCreate(Sender: TObject);

 

begin

 

  Bitmap := TBitmap.Create;

 

  Bitmap.LoadFromFile('C:WINDOWScars.BMP');

 

end;

 

 

 

procedure TForm1.FormPaint(Sender: TObject);

 

var

 

  X, Y, W, H: LongInt;

 

begin

 

  with Bitmap do begin

 

    W := Width;

 

    H := Height;

 

  end;

 

  Y := 0;

 

  while Y < Height do begin

 

    X := 0;

 

    while X < Width do begin

 

      Canvas.Draw(X, Y, Bitmap);

 

      Inc(X, W);

 

    end;

 

    Inc(Y, H);

 

  end;

 

end;

 

 

 

Bir Denetim Masası uygulamasını çalıştırmak

 

Control Panel uygulamaları WindowsSystem klasörü altında bulunur. *.CPL uzantılı dosyalardır. Bu uygulamaları Control.Exe programı ile çalıştırabilirsiniz. Bazı Control Panel uygulamaları WindowsSystem klasöründe bulunmaz. Bunların ismini vererek çalıştırabilirsiniz.

 

 

 

WinExec('C:WINDOWSCONTROL.EXE TIMEDATE.CPL', sw_ShowNormal);

 

WinExec('C:WINDOWSCONTROL.EXE MOUSE', sw_ShowNormal);

 

WinExec('C:WINDOWSCONTROL.EXE PRINTERS', sw_ShowNormal);

Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol