Thread kullanımı hakkında bilgiye ihtiyacım var. Yardım ederseniz sevinirim.
Özellikle CreatThread fonksiyonunu kullanarak yapılan bir örnek varsa çok daha iyi olur.
Çünkü istediğim her fonksiyona ayrı bir thread kanalı oluşturup, bunu kontrol edebilmek
istiyorum....
Şimdiden teşekkürler....Bilgi paylaştıkça çoğalır ilkesiyle hareket eden herkeze teşekkürler..
Programlarınızda bilgi girişi esnasında kullanıcı açıklama girerken sayısal ifadeler
kullanmış olabilir. Örneğin: Ahmet beyden 1. taksite mahbuben tahsil edilmiştir.
Şimdi ahmet bey ikinci ödemeyi yaptığında kullanıcıyı hiç uğraştırmamak için kayıta
günün tarihini ve ödemesi gereken miktarı otomatik olarak hesaplayıp yeni bir kayıt
oluşturduğunu düşünelim. Burada eksik bir nokta var. Peki açıklama ne olacak; yeni kayıtta da
açıklamanın içinde 1. ödeme olması hiçde hoş olmaz herhalde. Çünkü 2. ödeme fakat açıklamasında
1. ödeme olduğu yazıyor.İşte bu noktada aşağıdaki procedürü kullanabilirsiniz.
Ben prosedür olarak yazdım; fakat siz bunu fonksiyon olarak düzenlerseniz daha kullanışlı
olur herhalde....sonuç gidenaciklamaxx adında bir değişkene aktarılıyor (Global bir değişken olmalı)
Eğer rakamı arttırması yerine azaltmasını istiyorsanız ssonokunanrkm:=ssonokunanrkm+1;
satırında + yı - olarak değiştirin. DİKKAT: Arttırma işlemini yapması için sayının sonuna
'.' işaretinin konması gerekir. Doğru Örnek: 1. ödemeye mahsuben
Yanlış Örnek: 1 ödemeye mahsuben
Ben açıklamayı 35 karakterle sınırlamıştım..siz değiştirirsiniz artık....
Sayı yazının herhangi bir yerinde olabilir. Önemli olan sonunda '.' işareti olması...
muharremyildiz@hotmail.com kasimyildizi@yahoo.com
İkinci konuyu okumayı unutmayın (EXE kodunu küçültmek-Delphinin kendi özelliği ile)
procedure TForm1.kopyaaciklamaxx(gelenaciklamaxx:string);
var
ssonokunanrkm,suzunluk,silknokta,ssonnokta,snokta,ssaybul:integer;
sokunanrakam:string[9];
skopaciklama:string[35];
ssaybuldevam:boolean;
begin
gidenaciklamaxx:='';
skopaciklama:=gelenaciklamaxx;ssaybuldevam:=true;
if Pos('.',skopaciklama)>0 then
Begin
snokta:=Pos('.',skopaciklama);
ssonnokta:=snokta;
suzunluk:=0;
For ssaybul:=snokta-1 downto 1 do
begin
if ssaybuldevam then
if (skopaciklama[ssaybul] in ['0'..'9']) then
begin
suzunluk:=suzunluk+1;
end else ssaybuldevam:=false;
end;
if suzunluk>0 then BEGIN
silknokta:=ssonnokta-suzunluk;
sokunanrakam:=copy(skopaciklama,silknokta,suzunluk);
delete(skopaciklama,silknokta,suzunluk);
ssonokunanrkm:=strtoint(sokunanrakam);
ssonokunanrkm:=ssonokunanrkm+1;
insert(inttostr(ssonokunanrkm),skopaciklama,silknokta);
gidenaciklamaxx:=skopaciklama;
END else gidenaciklamaxx:=skopaciklama;
End else gidenaciklamaxx:=skopaciklama;
end;
*******EXE KODU KÜÇÜLTÜN**********
EXE kodunu küçültmek:(T. Bağrıyanık sitesinde anlatmış..Kendisine teşekkür ediyorum..)
Menülerden Project>Options>Packes=> bu kısımda Build with runtime packages checkbox
kutucuğunu işaretlerseniz uygulamanızın boyutu aşırı derecede küçülür. Örneğin 300kb
boyutunda olan bir uygulama bu işlemden sonra 15 veya 16 kb gibi bir boyuta düşer.
Fakat artık programınız bazı dosyalara muhtaç olacaktır. Çünkü exe kodunda sadece komutlar
mevcuttur. Komutları yerine getirecek kısımların hemen hemen hepsi Delphinin kütüphane
dosyalarından sağlanır. Peki bu özelliği nezaman kullanmalısınız? Diyelimki yaptığınız program
birçok exe dosyasından oluşuyorsa herbir exe çok fazla yer kaplar. Bu durumda exe küçültme işlemi
yapmanız daha mantıklı olacaktır. Böylece bir çok program tek kaynağı kullanmış olacaktır.
Bu size diskte ve bellekte daha fazla yer kazanmanızı sağlayacaktır. Bu çalışma sistemi Visual
Basicte de aynen uygulanmıştır. Fakat Microsoft kendi programlarını desteklemek istediğinden
dolayı visual basic kütüphane dosyaları windows içinde zaten mevcut. Fakat delphi için sizin
bu dosyaları windows klasörünün altına kopyalamanız gerekli. Bu işlemi isExpress kullanarak otomatik
yapmasını sağlayabilirsiniz...Delphinin EXE dosyaları çoook büyük diyenlere cevap olur herhalde..
Delphi bu özelliği bizim isteğimize bağlamış..ister büyük ister küçük...
Dikkat: Eğer kullandığınız bilğisayarda delphi ile yapılmış başka programlar yoksa
EXE kodunu küçültmenin bir anlamı yok!!!Diskten ve bellekten kazanmak yerine kaybedersiniz.