Procedure ve Function havuzu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

Procedure ve Function havuzu

Mesaj gönderen webaytek »

eğer bu konu öncdeden konuşulduysa adminimden çok özür diliyorum - ama ben 50yi aşkın procedure ve functionumu bir dosyadan sürekli kopyala yapıştır yapmaktan çok sıkıldım. Şööle yapsak nasıl olur (adına component denir mi bilemiyorum!!!) 1 dosya yaratsak içine bu fonksiyonları ve procedürleri koysak - mesela ben delphi5 kullandığım için randomrange fonksiyonu yok... bu ve onlarca fonksiyon ve procedure için 1 component yazsak - ve bunları içine koysak ben de sadece randomrange(3,5) yazsam da bu fonksiyonlar işlese...

Bunu nasıl yapacağımı söylerseniz çoook sevinirim - KOLAY GELSİN :-)


// Edit //
@mrmcop yazdı:// Başlığı Makalelerden Programlama'ya taşıyan : @mrmcop
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

Böyle şeylere unit diyoruz ve kullanıyoruz. Bütün procedure ve func. larını bir unit içine yazarsın. Çağırmak istediğini ismiyle çağırırsın. Programının başına da uses UnitAdın yazarsın ve kullanırsın.

Senin anlatmak istediğin bu mudur? Yoksa unit içindeki func ve proc'lara random çağrı mı yapmak istiyorsun? Daha açık anlatabilir misin?
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

Mesaj gönderen webaytek »

tabii dediğiniz kadar basit bir iş yapmak istiyorum

Kod: Tümünü seç

uses WebAytek
diicem sonra butona mesela üstteki örnekteki gibi

Kod: Tümünü seç

showmessage(inttostr(randomrange(3,9)));
diicem (bu örneği vermemin sebebi randomrange'in delphi5 te olmaması :-) ) ....
benim sorunum burada başlıyor. Unit leri nasıl :?: nereye :?: yazmalıyım - KOLAY GELSİN
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

coderlord yazdı:Programının başına da uses UnitAdın yazarsın ve kullanırsın.
arkadas ne guzel yazmıs, ama okumazsanız bi ise yaramazki, temcit pilavı gibi unit,unit... deyip durursunuz.
ÜŞENME,ERTELEME,VAZGEÇME
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

Mesaj gönderen webaytek »

ben onu anladım da sizin anlamadığınız şurası - unit WebAytek yazdım ama webaytek diye bi unit yok ki ben bunu nasıl yazabilirim diye soruyorum - 1. mesajımda açıkça yazıyo :)
Kullanıcı avatarı
gkimirti
Admin
Mesajlar: 1956
Kayıt: 02 Eyl 2003 04:44
Konum: İstanbul

Mesaj gönderen gkimirti »

Kod: Tümünü seç

unit WebAytek;

interface

uses Sysutils, Windows, Messages, Math, Bde, Forms, Classes, Controls,
  Dialogs, StdCtrls;


//TL den YTL ye donusturme
function TLtoYTL(Para: Currency): Currency;

implementation


function TLtoYTL(Para: Currency): Currency;
// Tam sayıdan sonra en fazla 5 rakam olacak...
// Programlar
// 1, 5, 10, 25, 50      Yeni Kuruş'a;
// 1, 5, 10, 20, 50, 100 Yeni Türk Lirası'na uyumlu hale getirilecek

// 1.000.000 = 1 Lira = 100.0000 Kuruş
//   100.000 = 0 Lira =  10.0000 Kuruş
//    10.000 = 0 Lira =   1.0000 Kuruş
//     5.000 = 0 Lira =   0.5000 Kuruş    // 1 Kuruşa tamamlanacak ama altındakiler dikkate alınmayacak...
var
  Lira, Kurus, Kalanlar: LongInt;
begin
  // İlk olarak Yeni TL kısmını alalım...
  Lira := Trunc(Para / 1000000);
  // Geri kalanları ayırıp değerlendirmeye alalım...
  Kalanlar := Trunc(Para - (Lira * 1000000));
  // Kalanların ilk iki hanesi Yeni Kuruş
  Kurus := Trunc(Kalanlar / 10000);
  // Kalanların 0.5'den büyükse Kuruşa (+1) ekle...
  Kalanlar := Trunc(Kalanlar - (Kurus * 10000));
  if (Kalanlar - 5000) >= 0 then
    Inc(Kurus);
  Result := Lira + (Kurus / 100);
end;


end.
ne yalan soyleyeyim, bu kadarını da bilirsiniz diye tahmin etmistim
en azından yeni bir form eklediginizde olusan unitin yapısından kopya cekebilirdiniz.
ÜŞENME,ERTELEME,VAZGEÇME
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

Mesaj gönderen webaytek »

ben bu şekilde denemiştim ancak sorun olmuştu - continue execution? diye bir mesaj çıkıp duruyordu da galiba hata delphi ile ilgili - daha doğrusu yanlış kurulum - gkimirti kardeşim saolun sayenizde gerçekten çok gerekli bilgilere ulaştım ancak neden aşağılar gibi konuştuğunuzu anlayamıyorum - yani bilmemek de mi suç oluyor :cry:
Yine de ellerinize sağlık - KOLAY GELSİN
fduman
Moderator
Mesajlar: 2749
Kayıt: 17 Ara 2004 12:02
Konum: Ankara

Mesaj gönderen fduman »

aşağılamak falan değil. kesinlikle böyle düşünme. delphi'nin ana yapılarından birini nasıl olup da bilemediğini anlayamadık. düşünemedik işte. bir proje oluşturduğunda bu unit yapısını delphi otomatik oluşturur. buradan bakmışsındır zaten diye düşündüm ve "daha komplex bir şey mi soruyor acaba?" dedim kendi kendime.

yanlış install olduğunu zannetmem. eğer bir projeyi zaten çalıştırmışsan ve projeyi çalışır halde açık bırakıp kod üzerinde değişiklik yaparak yeniden derlemeye çalışırsan Delphi "bu proje zaten çalışıyor. yeniden mi derlemek istiyorsunuz" diye sorar. sana sorduğu "continue execution?" muhtemelen bu yüzden.
Kullanıcı avatarı
webaytek
Üye
Mesajlar: 377
Kayıt: 23 Haz 2004 10:58

Mesaj gönderen webaytek »

@coderlord kardeþim saolasýn ben zaten sana söölememiþtim - @gkimirti abimize söölemistim - ama gene de hepinize çooook teþekkür ederim - faydalý bilgiler öðreniyorum sayenizde :)
Cevapla