2014-12-10 2 views
0

이 작은 프로그램을 시각적 기본으로 작성해야하지만 런타임 중에 색상을 변경하거나 목록 양식 텍스트 파일을 추가 할 수없는 문제가 있습니다. 런타임에 목록 상자를 만들고 런타임에 메뉴를 통해 색상을 변경하십시오.

내가

http://i62.tinypic.com/30tghh0.png

을 할 습관 무엇의 사진입니다 그리고 당신이 OpenToolStripMenuItem 하위에 보는 바와 같이 이것은 내가 지금까지 쓴 코드 ,,

Public Class Form1 

    Private Sub NewToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NewToolStripMenuItem.Click 
     Dim listBox1 As New System.Windows.Forms.ListBox 
     listBox1.Text = "New List" 
     listBox1.Location = New Point(25, 25) 
     listBox1.Size = New Size(380, 280) 
     Me.Controls.Add(listBox1) 
     OpenToolStripMenuItem.Enabled = True 
     SaveToolStripMenuItem.Enabled = True 
     SaveAsToolStripMenuItem.Enabled = True 
     CloseToolStripMenuItem.Enabled = True 
     EditToolStripMenuItem.Enabled = True 

    End Sub 

    Private Sub ExirToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ExirToolStripMenuItem.Click 
     End 

    End Sub 


    Private Sub OpenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OpenToolStripMenuItem.Click 

     If (OpenFileDialog1.ShowDialog() = System.Windows.Forms.DialogResult.OK) Then 
      Dim myfile As String = OpenFileDialog1.FileName 
      Dim allLines As String() = File.ReadAllLines(myfile) 
      For Each line As String In allLines 
       ListBox1.Items.Add(line) 
      Next 
     End If 
    End Sub 
End Class 

문제입니다 line ListBox1.Items.Add(line)

아직 작성되지 않았기 때문에 listbox1이 없습니다. 색상, 저장 및 나머지와 동일합니다.

그래서 해결하도록 도와주세요.

+0

왜 코드를 가지고 있는지 확실하지 않지만,'NewToolStripMenuItem'을 클릭하면리스트 박스가 생성 될 것입니다. 너가 원하는게 그거야? –

답변

0
클래스 수준에서에 ListBox1의 선언을 이동

:

Public Class Form1 

    Private ListBox1 As System.Windows.Forms.ListBox 

    Private Sub NewToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NewToolStripMenuItem.Click 
     ListBox1 = New System.Windows.Forms.ListBox 
     ... 
    End Sub 

    ... 

End Class 

* 그런데 왜이 같은 실행 시간에 그것을 만들? 디자인 타임에 추가하고 Visible() 속성을 False로 설정할 수 있습니다. New 버튼을 클릭하면 Visible()이 True로 변경됩니다. 매번 새로운 ListBox를 만들 필요가 없으면 하나 이상의 ListBox를 가질 수 있습니까? 만약 그렇다면, 어떻게 배열 될 것입니까? ...

관련 문제