2017-05-23 57 views
0

詳細說明標題:如何隱藏另一個表格上的圖片框

我目前有兩種形式。

  • Form1中=使用ShowDialog()

Form1中有3個圖片框和一個按鈕

Form2的是一個簡單的填寫表單,什麼我希望它的主要形式

  • 窗體2 =鏈接到Form1當我單擊Form2上的確定按鈕時,我將form2設置爲關閉但我需要隱藏Form1上的圖片框和按鈕,即將其顯示爲空白。

    我不太確定我做錯了什麼。

    我加了圖片框的公開聲明中Form2.vba

    Public Class CreateNewProject 
    
    'declare Form1 objects 
    Public Img_Documentation As PictureBox 
    Public Img_OnlineResources As PictureBox 
    Public Img_Tutorials As PictureBox 
    

    而且我在按鈕子加入.hide()每個圖片框

    Private Sub ButtonOK_Click(sender As Object, e As EventArgs) Handles ButtonOK.Click 
    
        If TextNewProjectName.Text = "" And TextSaveFileLocation.Text = "" Then 
         MessageBox.Show("Please enter a " & LabelProjectFileName.Text & vbCrLf & vbCrLf & "Please choose a " & LabelSaveFileLocation.Text, "Warning") 
        Else 
         'Close current form 
         Me.Close() 
         'Close objects on Form1 
         Img_Documentation.Hide() 
         Img_OnlineResources.Hide() 
         Img_Tutorials.Hide() 
        End If 
    End Sub 
    

    另外,我試圖創建一個新的空格式(form3)在關閉form2之後打開該窗體,這很好用,但我無法使用Form1.close()讓Form1關閉。

    Me.Close() 
    Form3.Show() 
    Form1.close() 
    
  • +0

    應該沒有代碼'Form2'在所有指'Form1'。當'Form1'調用'ShowDialog'時,它將阻塞,直到'Form2'關閉。這意味着你只需在ShowDialog調用後添加你的代碼來隱藏你的控件。如果'Form1'需要'Form2'的數據來確切地知道hwat做什麼,那麼你在'Form2'中添加公共屬性來公開這些數據,'Form1'檢索它。 「Form1」爲自己完成工作,而「Form2」甚至不知道「Form1」存在。 – jmcilhinney

    回答

    0

    簡單地隱藏你的Form1PictureBox打開Form2之前:

    PictureBox1.Visible = False 
    PictureBox2.Visible = False 
    PictureBox3.Visible = False 
    Form2.Show() 
    
    +0

    非常感謝!現在我感到很蠢。 – Nix

    +0

    @Nix記得標記爲答案,如果這解決了你的問題 – Mederic