2016-04-06 30 views
3

Kullanıcı gösterilen formu kapatıncaya kadar kod yürütmeyi zorlamak için Form.Show Modal yapıyorum.Form.hide, kodun etc6'daki bir Form.Show Modal'ın "ötesine" devam etmesine izin veriyor mu?

Bu form tekrar tekrar gösteriliyor, bu yüzden sadece TAMAMEN kalacağımı düşünüyorum. Bu iyi çalışıyor gibi görünüyor, ancak onaylamak istedim.

Yani:

  1. frmMessage.Show MODAL
  2. kullanıcı Tamam tıklar ve frmMessage.Hide
  3. kod Ya kalıcı form yakın veya gizleme izin yapabilirsiniz

cevap

4

devam yürütme işlemine devam etmek için kod. Uygulamanız kapanmadan önce bir noktada gizli formları kaldırdığınızdan emin olmalısınız. Uygulamamda, formlar hala yüklendiğinde ve gizlendiğinde, her zaman doğru şekilde kapatılmamış uygulama ile ilgili sorunlar yaşadım. Gizli formlarınızın hangi kaynakları kullandığını bağlı olabilirsiniz.

+1

Ayrıca bir tane. [Form.Show] 'daki VB6 kullanıcı kılavuzu konusu (https://msdn.microsoft.com/en-us/library/aa244181 (v = vs60) .aspx) diyor. * Show, modal form görüntülediğinde Kod, form gizli veya boşaltılana kadar yürütülür. * Ve evet, gizli formlar daima programınızı kapatmayı durdurur (sadece bazen değil, her zaman düşünüyorum). VB6 kullanım kılavuzu [VB6 formlarının yaşam döngüsü] (https://msdn.microsoft.com/en-us/library/aa242139 (v = vs60) .aspx) çok sayıda ilgili ayrıntıyı verir – MarkJ

+1

@MarkJ The ' End' ifadesi, bu formların boşaltma olay işleyicilerinden herhangi birini çağırmadan, tüm formları, gizli veya başka bir şekilde, modal olsun veya olmasın ve yürütmeyi sona erdirir. Bu nedenle, tavsiye edilmemelidir, ancak yine de bunu yapacaktır. Formları toplama işlemini yinelemek ve her birini özel olarak bir kapatma yordamının parçası olarak boşaltmak daha iyidir. – BobRodes

+0

İyi nokta, @Marc, Zaten tüm formları kapsayan ve bunları kapatan bir kod var. –