2012-01-28 18 views
8

Hala VBA programlama yapan herhangi biri var mı? VBA'da düğme denetimi nasıl gizlenir

bu kodu nedir Temelde yapmaya çalışıyorum ben 5 ana düğme denetimlere sahip bir ana form var olmasıdır

Private Sub button3_click() 

    'hide main buttons 
    button1.Visible = False 
    button2.Visible = False 
    button3.Visible = False 

    'show submenu buttons 
    button4.Visible = True; 
    button5.Visible = True; 

End Sub 

işe almaya çalışıyorum. Bunlardan 2 tanesi başlangıçta gizlendi. 3 numaralı düğmeyi tıkladığımda, ilk 3 ana düğmeyi gizlemek ve diğer ikisini de "göstermek" istiyorum. Bu olayı yürütmeye çalışırken , bir hatayı

var " Zamanı Hatası 2165 - Sen odağı sahip bir denetimi gizleyemezsiniz".

Daha önce bu programlama yönüne rastlayan var mı? Eminim ki yapılabilir. Sadece neyin yanlış gittiğini anlamıyorum ...

+0

sayesinde herkesi denemelisiniz. Tüm önerileriniz denendi - işe yarıyor! Kodlama yaparken 'kare dışında düşünebilirseniz' bu basit işlevsellik üzerinde çalışmanın bir yolu olduğunu düşünmeliydim. Şerefe. :) – awongCM

cevap

7

Değişim görünür kontrolün birine odağı Belki DoEvents komutu atlayabilirsiniz güncel bir

Private Sub button3_click() 

    'show submenu buttons 
    button4.Visible = True 
    button5.Visible = True 

    DoEvents   'execute any pending events, to make sure the button 4 and 5 are really visible 
    button4.SetFocus 'change the focus to a now visible control 
    DoEvents   'execute any pending events, to make sure that button4 really has the focus 

    'now you can hide the other buttons 

    'hide main buttons 
    button1.Visible = False 
    button2.Visible = False 
    button3.Visible = False 

End Sub 

gizleme önce, sen

İlgili konular