Formlar arası geçiş

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

:lol: :lol: :lol:

- Bazen kendimi çok saf hissediyorum... :oops:

- Şimdi anladım sorunun ne olduğunu ? Ben de sorunun Application.Minimize kullandığından tüm formlar minimize olması sanıyordum...

- Şimdi asıl çözüme gelelim... Şimdi her ikincil form'un pencere olarak da parenti nedir, AnaForm değil mi, işte biz bunu ana formunki gibi Windows Masaüstü yaparsak yeni ait olduğu yere yani TaskBar'a minimize olmasını sağlarız.. Ben de zamanında benzer bir ihtiyaç için tabiri doğru ise tırmalamıştım... Şanslısın sen o kadar zorlanmayacaksın... :o

- İlk olarak AnaForm dışındaki formlarımıza ekleyeceğimiz Parametrik değişikliği göstereyim...

:arrow: Her Formun Type satırının altına şunu ekle...
(Hani aşağıdaki gibi gördüğün yerin hemen altına...)

Kod: Tümünü seç

type
  TForm3 = class(TForm)

Kod: Tümünü seç

  protected
    procedure CreateParams(var Params: TCreateParams); override;
:arrow: Sonra da bu yeni eklediğin Procedure satırına gelip kestirmeden Delphi IDE'nin sana sunduğu hizmeti kullanmak üzere CTRL+SHIFT+C tuş kombinasyonuna basıp, senin için hazırlayacağı procedure bloğuna geçip şunları ekle.. Ben bütününü yazıyorum sen kendi form adına göre gerekli yeri alırsın...

Kod: Tümünü seç

procedure TForm3.CreateParams(var Params: TCreateParams);
begin
  inherited;
  Params.WndParent := GetDesktopWindow();
end;
- Burada yaptığın şey, pencerenin parentini, henüz formun oluşum aşamasında Application'un main formu değil Desktop penceresi olduğunu belirtmek şeklinde...

- Artık bu eklemeyi yaptığın her alt form, TaskBar'a minimize olacaktır...

Çalışmalarında başarılar... :)
Resim
Resim ....Resim
AliRiza
Üye
Mesajlar: 172
Kayıt: 24 Kas 2004 10:57
Konum: İstanbul/Avcılar
İletişim:

Minimize ettikten sonra form1'i otomatik aktif

Mesaj gönderen AliRiza »

Muharrem arkadaş sana çok teşekkür ederim.Ayrıca bende araştırıp buldum.Senin verdiğin kodların aynısı.Kafama takıldı görev çubuğuna minimize edildikten sonra (ana formun dışında kalan formlar) ana formu direk aktif hale getirebilirmiyiz.Yani ana form görev çubuğunda tıklanmadığı zaman aktif olmuyor.Direk nasıl aktif yaparız..
Bilginin efendisi olmak için çalışmanın uşağı olmak şarttır...
BALZAC
Bana bir harf öğretenin kulu kölesi olurum..
HZ.ALİ
Kullanıcı avatarı
mrmarman
Üye
Mesajlar: 4741
Kayıt: 09 Ara 2003 08:13
Konum: İstanbul
İletişim:

Mesaj gönderen mrmarman »

- Kızmayasın, aynı kodları buldum demişsin ama işlerinin yoğunluğu vs. sebeplere veriyorum, kavramak gereği duymamışsın... :oops:

- Verdiğim cevap bu sorunu da japsıyordu oysa ki :idea:

- Ana formun devletlin Application'u ta kendisi değil mi ?

Kod: Tümünü seç

  Application.Restore;
... dersen emin ol alt formlar değil sadece ana formun bu komutu üstüne alınacaktır... :lol:
Resim
Resim ....Resim
Cevapla