タイトルを詳しく調べよう:別のフォームの画像ボックスを非表示にする方法
私は現在2つのフォームを持っています。 Form1にリンクされ
- をForm1 =メインフォーム
- のForm2 =
ShowDialog()
を使用してForm1が3つの画像ボックスとボタン
Form2のは、単純な入力可能な形態であり、私はそれにしたいを持っていますForm2のOKボタンをクリックすると、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
でパブリック宣言として画像ボックスを追加し、私は私のボタンのサブ代わり
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
内の各ピクチャボックスに.hide()
を追加し、私は新しいを作成してみました空白のフォーム(form3)は、フォーム2を閉じた後にそのフォームを開きましたが、うまくいきましたが、Form1.close()
を使用してForm1を閉じることができません。あなたがForm2
を開く前
Me.Close()
Form3.Show()
Form1.close()
'Form1'を指しForm2''で、まったくのコードがあってはなりません。 'Form1'が' ShowDialog'を呼び出すと、 'Form2'が閉じるまでブロックされます。これは、 'ShowDialog'呼び出しの後にコントロールを隠すコードを追加するだけで済むことを意味します。 'Form1'が' Form2'のデータを必要としている場合、正確にhwatを知るためには 'Form2'に公開プロパティを追加してデータを公開し、' Form1'はそれを取得します。 'Form1'はそれ自身のための作業を行い、' Form2'は 'Form1'が存在することさえ知らない。 – jmcilhinney