Kendi MessageBox'ımı yapsam butonu nasıl bulurum?
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Kendi MessageBox'ımı yapsam butonu nasıl bulurum?
S.A.
Kendi mesajkutumu yapsam güzel olacak.
Mesajı göstermeyi, butonları vs. hallederim. Fakat basılan butonu mesajı oluşturan forma nasıl gönderirim bilmiyorum?
Kendi mesajkutumu yapsam güzel olacak.
Mesajı göstermeyi, butonları vs. hallederim. Fakat basılan butonu mesajı oluşturan forma nasıl gönderirim bilmiyorum?
- Murat DİCLE
- Kıdemli Üye
- Mesajlar: 702
- Kayıt: 19 Nis 2006 04:12
- Konum: İstanbul
- İletişim:
Bir unit yap, içinde formuda olsun bu unitin..
mesaj kutusunu tasarla..
sonra unite şöyle bişi ekle..
Ve nasılki, ShowMessage'yi kullanmak için dialogs diyorsun USES kısmında, artık kullanmak istediğin formların USES kısmına yazmış olduğun unitinadını yaz..
Tabi bu yazacağın Uniti belli bir klasöre koy ve bu klasörü library path'e eklemeyi unutma..
Dilersen dialog mesaj kutusuda yapabilirsin..
işte böyle böyle geliştirirsin.. kralını yaparsın..
kolay gelsin...
mesaj kutusunu tasarla..
sonra unite şöyle bişi ekle..
Kod: Tümünü seç
procedure MesajGoster(msg : string);
implementation
procedure MesajGoster(msg : string);
begin
with TMsgForm.create(Application) do
begin
ShowModal;
Free;
end;
end;
Tabi bu yazacağın Uniti belli bir klasöre koy ve bu klasörü library path'e eklemeyi unutma..
Dilersen dialog mesaj kutusuda yapabilirsin..
Kod: Tümünü seç
Function TikkatNeYapiim(msg : string) : TModalResult;
implementation
Function TikkatNeYapiim(msg : string) : TModalResult;
begin
with TMsgForm.create(Application) do
begin
Result := ShowModal;
Free;
end;
end;
kolay gelsin...
Hocam anlayamadım.
Diyelim ki mesajkutusunda iki buton var.
Hangisine basıldığını ana forma nasıl belirtecem?
Misal MessageBox'da şöyle yapıyoruz;
Burda cevap'a idyes, idno vs. değerleri yükleniyor.
Diyelim ki mesajkutusunda iki buton var.
Hangisine basıldığını ana forma nasıl belirtecem?
Misal MessageBox'da şöyle yapıyoruz;
Kod: Tümünü seç
cevap:=Application.MessageBox('Kayıt silinsin mi?','Sil',MB_YESNO);
if cevap=idyes Then begin
//if then for filan
end;
Murat hocam çok teşekkürler.
ShowModal'dan yola çıkarak şöyle bi şey yaptım.
Başkası yapmak isterse yardımı olur belki;
Kullanımı; uses'a Unit19'ı ekledikten sonra Tabi çok geliştirilmesi lazım bunun...
ShowModal'dan yola çıkarak şöyle bi şey yaptım.
Başkası yapmak isterse yardımı olur belki;
Kod: Tümünü seç
var
Form19: TForm19;
sonuc : byte;
implementation
{$R *.dfm}
function TForm19.MesajGoster(b1, b2: string): byte;
begin
Button1.Caption:=b1;
Button2.Caption:=b2;
Form19.ShowModal;
Result:=sonuc;
end;
procedure TForm19.Button1Click(Sender: TObject);
begin
sonuc:=1;
Close;
end;
procedure TForm19.Button2Click(Sender: TObject);
begin
Sonuc:=2;
Close;
end;
end.
Kod: Tümünü seç
sonuc:= Form19.MesajGoster('Evet','Hayır');
-
- Kıdemli Üye
- Mesajlar: 1223
- Kayıt: 26 Nis 2005 04:08
- Murat DİCLE
- Kıdemli Üye
- Mesajlar: 702
- Kayıt: 19 Nis 2006 04:12
- Konum: İstanbul
- İletişim:
formun üstüne iki yane button koy.
biri CANCEL biride OK olsun..
CANCEL buttonunun MODALRESULT'unu mrCancel diğerini mrOK diye ayarlıyaiblirsin.
Yada buttonların onclick olayında CANCEL buttonu için..
bu şekilde de kullanabilirsin...
tabi illaki TModalResult olması şart değil, yaptığın gibi integer bir değerde kullanabilirsin. Ama standard olması açısından bir başkasınında bunu kullanacağını düşünerekten yazman iyidir...
kolay gelsin..
biri CANCEL biride OK olsun..
CANCEL buttonunun MODALRESULT'unu mrCancel diğerini mrOK diye ayarlıyaiblirsin.
Yada buttonların onclick olayında CANCEL buttonu için..
Kod: Tümünü seç
CancelButton....onclick
begin
ModalResult := mrCancel;
end;
tabi illaki TModalResult olması şart değil, yaptığın gibi integer bir değerde kullanabilirsin. Ama standard olması açısından bir başkasınında bunu kullanacağını düşünerekten yazman iyidir...
kolay gelsin..
ulu coder yazdı:ModalResult'u araştırdım.
Bu kodlardan pek farkını göremedim.
Neden onu kullanmalıyım?
evet farklı ...düşünsene bir ton messagebox formun olduğunda her defesında
sonuc değer yükleyerek bunu yaparsın ama kod kalitesi bozulur bence...
messagebox formun sana rapamtre göndermeli bence bu hususta yönlen düşünsene bunu bir defa yaparsın ve hep kullanırısın....
Siz hayal edin...Biz yapalım TuannaSoft...