2014-11-02 75 views
1

我一直在用一些IF語句一遍又一遍地遇到同樣的問題。一個形式我得到了這個:VB.net如果跨越不同表格的聲明不起作用

If KarlConvo = 4 Then 
    MsgBox("Karl: Wow man. I overheard everything. I don't like your methods but it did work. Have this man. I can't wait until she approaches my sexy self") 
    MsgBox("You have obtained the SANDWICH") 
    PlayerProfileMale.tpbSandwich.Visible = True 
    PlayerProfileMale.lblSandwich.Visible = True 
    Form2.lblFact3C2.Visible = True 
    KarlConvo = 5 
    TobyConvo = 4 
    PlayerProfileMale.EatButton = True 
End If 

上面的代碼發生在msgbox彈出後。它應該允許在另一個表單上出現「吃」按鈕。該表格上的IF語句:

If EatButton = True Then 
    btnEat.Visible = True 
End If 

那麼問題是,按鈕是不是我的第二個表上顯示,即使它有唯一的條件是爲EatButton變量(這是一個公共屬性)是真正。任何想法爲什麼發生這種情況?

在此先感謝

+0

我不清楚EatButton的範圍。顯示更多的上下文? – 2014-11-02 18:01:17

+0

嘗試先看4行。該線與EatButton有什麼區別? – Steve 2014-11-02 18:05:28

+0

要從另一個表單顯示PlayerProfileMale表單中的btnEat按鈕,必須執行PlayerProfileMale.btnEat.Show – 2014-11-02 18:30:37

回答

1

這裏有幾件事情要檢查:

  1. 顯示,塗料,或重新加載PlayerProfileMale形式分配PlayerProfileMale.EatButton = True後。觸發導致If EatButton語句執行的事件。

  2. 確定您在爲PlayerProfileMale.EatButton = True指定PlayerProfileMale的正確實例。這通常不會成爲問題,但可以是創建表單實例並在創建任務時創建(或已經打開)另一個實例。