Formun/pencerelerin Arkada Kalması

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Formun/pencerelerin Arkada Kalması

Mesaj gönderen greenegitim »

Merhaba, showmodal olarak gösterdiğim formda bazen döngülerde bazen döngü sonunda koyduğum showmessage komutunda arkada kalma sorunu oluyor bazen taskbarda program iconuna tıklayınca öne geliyor ama bazen getiremiyorum.

Örnek senaryo for döngüsü ile 1000 kayıt ekliyorum ekleme işlemi bittiğinde showmessage ile bitti mesajı veriyor program eklemeye başlıyor kullanıcı Windows + D tuşu ile masaüstüne geçiyor daha sonra programın işi bitmiştir deyip icona tıkladığında ekranda işlem yapamıyor çünkü showmessage komutuna ok tıklaması lazım ama ekranda showmessage görünmüyor.
Mücadele güzelleştirir!
ertank
Kıdemli Üye
Mesajlar: 1716
Kayıt: 12 Eyl 2015 12:45

Re: Formun/pencerelerin Arkada Kalması

Mesaj gönderen ertank »

Merhaba,

Acaba uygulamanızda kullanıcı şifresi almak için gösterilen "Login ekranı" ile ilgili olarak form gösterme konusunda kullandığınız bir "hack" işlemi var mıdır? MainForm değiştirme, Her formun kendi icon kullanması vb. gibi bir yöntem?

Bu tür yöntemler bahettiğiniz türden sorunlara yol açabilmektedir.

Çözüm denemesi olarak kendi mesaj formunuzu geliştirip StayOnTop şekilde ekranda göstermeyi deneyebilirsiniz.
Kullanıcı avatarı
greenegitim
Üye
Mesajlar: 713
Kayıt: 28 Nis 2011 10:33
Konum: İstanbul

Re: Formun/pencerelerin Arkada Kalması

Mesaj gönderen greenegitim »

main form değiştirme icon v.s gibi bir yöntem hiç kullanmadım,
örnek tek form olan bir projede for döngüsü sonunda (döngü de iken windows + d ile masaüstüne dönüyorum)

Kod: Tümünü seç

 if MessageBoxW(Handle, 'Kayıt Klasörünü Açmak İstiyormusunuz?',
    'İşlem Tamamlandı', MB_YESNO + MB_ICONQUESTION) = IDYES then
  begin
     //klasör aç
  end;
bu şekilde açılması gereken messagebox formu öne getirsem dahi arkada kalabiliyor taskbarda program iconuna tekrar tıkladığım da öne geliyor bazende gelmiyor StayOnTop olayını denemedim tek formu olan winapi de olan MessageBoxW dahi bunu yapabiliyor. showmessage,MessageBoxW pencerelerini stayontop yapma yolu varmıdır. tabi formlar da cabası fatura formundan faturakayıt formuna geçiş yapıp oradaki bazı işlemlerde faturakayıt formu sanki hide durumuna geçmiş gibi de oluyor.
Mücadele güzelleştirir!
Cevapla