Delphi fonksiyonlarına birkaç örnek (derleme)

Kategoriler

Arşiv

Pt Sa Ça Pe Cu Ct Pa
12
3456789
10111213141516
17181920212223
24252627282930

E-bülten

Haberlere abone olun:


  • email Arkadaşına gönder
  • print Yazıcı versiyonu
  • Add to your del.icio.us del.icio.us
  • Digg this story Digg this

Bu yazıyı beğendiniz mi?

(toplam 1 oy)
Yazı büyüklüğünü ayarla: Decrease font Enlarge font

image
//Pos fonksiyonu
procedure TForm1.HazirlaClick(Sender: TObject);
label 1;
var I: integer;
Dosya: string;
begin
ListBox1.Clear;
for I:= 0 to FileListBox1.Items.Count - 1 do
begin
Dosya:= FileListBox1.Items.Strings[i];
if Pos('.', Dosya) > 0 then //Nokta(. işareti) buluncaya kadar döngü
begin //devam eder.
Dosya:= Copy(Dosya, 1, Pos('.', Dosya) - 1); //Dosya'nın .işareti olan
//kısmına kadar kopyalar
//Örnek: deneme.exe (dosyanız) -> Copy('deneme.exe',1,Pos('.','deneme.exe')-1);
//Sonuç --> deneme olarak kalır. Bu durumda Copy fonksiyonu içindeki 1 başlangıç,
//Pos('.','deneme.exe')-1 ise, .işaretininden 1 eksik karekter kadar demektir.
//deneme.exe dosyasında 1 -> d harfi, Pos('.','deneme.exe')-1 -> . işaretinden
//bir önceki e harfidir. Eğer .exe kısmını atarsak deneme 6 karekterlidir.
//Copy('deneme', 1, 6) anlamına gelir. Pos('.','deneme.exe')-1 -> 6 reel sayısını
//döndürür. Sonuç -> deneme
//Dosya:= 'Deneme.Exe';
//Copy(Dosya,Pos('.', Dosya)+1,Length(Dosya)); şeklindeki bir ifade ise;
//Deneme.Exe isimli dosyanın sadece " Exe " kısmını döndürür. Sonuç -> Exe
if Pos('.', Dosya) = 0 then GoTo 1; //başka .işareti bulamazsa döngü
end; //sonlanır ve Label 1 olarak tanımlı
end; //satıra gider (GoTo 1). Bu şartsız
//gidiştir. Başka yere gitme şansı yok
1://
Hazirla.Enabled:= False;
Aktar.Enabled:= True;
end;
//
*Bu kodlama, DosyaAdı ve DosyaUzantısı bulma ve ayırma işleminde kullanılabilir.
*Yukarıdaki satırlar, şuan piyasada FreeWare olarak çalışan fotoğraf stüdyoları için
yazdığım "Arşiv" programımda bulunmaktadır(ve tabii diğerlerinde de).

//Trunc, Int, Frac ve Round fonksiyonları
//Pi --> Pi sayısını verir ( 3,1415926535897932385 )
var
Z, Y: string;
R, S: real;
//
Z:= IntToStr(Trunc(1.4)); //kesirli kısmı atar. - (negatif) işaretliler için de
//geçerli (sonuç = 1)
R:= Int(123.456); //kesirli kısmı atar. - (negatif) işaretliler için de
//geçerli (sonuç = 123)
S:= Frac(123.456); //tam sayı kısmını atar. - (negatif) işaretliler için de
//geçerli (sonuç = 0,456)
Y:= IntToStr(Round(1.5)); // ,5 den ,9 e kadar tam sayı kısmına 1 ekler. Sonuç = 2
//Round(1.4) olsaydı Sonuç = 1 olacaktı. - (negatif) işaretliler için de geçerli
ShowMessage('Z = ' + Z +#10+ 'R = ' + FloatToStr(R) +#10+ 'S = ' + FloatToStr(S)
+#10+ 'Y = ' + Y +#10+ 'Pi = ' + FloatToStr(Pi));

//Real sayılar için FloatToStr(RealSayı) çevrimini kullanınız, Pi de bir Real sayıdır.

Not: Eklenecek o kadar çok fonksiyon var ki
Ancak, unutmayınız ki, sizin için en iyi yardımcı kullandığınız programın
Yardım(Help) dosyasıdır. Hemen hemen *.exe dosyanın yarısı kapasitesinde
*.hlp / *.html dosya hazırlanır. Lütfen, klavyenizden şu F1(Yardım) tuşuna
basmayı ihmal etmeyiniz ve naçizane tavsiyem, yazdığınız programlarda da F1 tuşuna
yardım dosyanızdan başka kısayol tanımlamayınız. F1 --> Kayıt demeyiniz. F1 zaten
Windows'un standart kısayol tuşudur. Windows ile zıtlaşmaya hiç gerek yok )
Hatta, F1 DOS(DiskOperatingSystem - Disk İşletim Sistemi)'un da yardım dosyasını
çalıştırır(programlamada gözünü DOS'la açanlar çok iyi bilir).

F1'i Formula One ile karıştırmayınız.

  • email Arkadaşına gönder
  • print Yazıcı versiyonu
  • Add to your del.icio.us del.icio.us
  • Digg this story Digg this

Yorum Yaz comment Yorumlar (0 Yazılmış)

Diğer Haberler

Bil-Tek.Org Bilim Teknik Teknoloji Bilgisayar Sistemleri Biyoloji Fizik Kimya Matematik Programlama Dilleri

Creative Commons License
Bazı Hakları Saklıdır.Site içeriği Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License ile lisanslanmıştır.İçeriğin Bil-tek.org editörleri tarafından üretilen kısmını, değiştiremez ve ticari amaçlı kullanamazsınız.İçeriği sitelerinize yapıştırabilirsiniz.Alıntı yaptığınız içeriğin linkini bağlantı olarak, alıntının altına eklemeniz gerekmektedir.
This work is licensed under a Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 Unported License.