2013-05-07 2 views
1

이것은 매우 간단한 질문 일 뿐이지 만 문구를 어떻게 쓰는지 모르겠습니다. 나는 단지 내가하려고하는 것을 설명 할 것이다.Picturebox 지정 VB.net

PictureBox의 그리드를 만들었고 활성화되었을 때 불을 켜고 싶습니다. 그들은 picturebox1에서 picturebox200까지의 범위를 가지며, 나는 점등시키려는 것을 지정하는 정수를가집니다. 어떻게 (의사)에 가겠어요 : 내가 지금 알고

Dim P as integer = 50 

me.pictureboxP.image = my.resources.on 

있는 유일한 방법은 엄청난 선택의 경우 수렁이다.

답변

1

어레이에 추가하십시오. 그런 다음 색인을 사용하여 원하는 색인을 선택하십시오.

0

양식의 Controls.Find 메서드를 사용하여이 작업을 수행 할 수 있습니다. 다음과 같은 뭔가 작업을해야합니다 :

Dim p as Integer = 50 
Dim pic as PictureBox = Me.Controls.Find("picturebox" + p.ToString, True) 
If Not pic Is Nothing Then 
    pic.Image = My.Resources.Icon 
End If 

참조 또한이 질문 : How do I refer to a windows form control by name (C#/VB)

0

Controls.Find() 컨트롤의 배열을 반환을, 단 하나 개 일치하는 경우에도.

Dim p as Integer = 50 
Dim matches() As Control = Me.Controls.Find("picturebox" + p.ToString, True) 
If matches.Length > 0 AndAlso TypeOf matches(0) Is PictureBox Then 
    Dim pic as PictureBox = DirectCast(matches(0), PictureBox) 
    pic.Image = My.Resources.Icon 
End If 
0
  1. True로 배열
  2. 설정 태그 속성에 그림 상자를 추가 따라서 당신은 배열의 길이를 사용하여 모든 반환 값을 확인하고 원하는 형식으로 반환 된 제어를 캐스팅해야합니다 'OFF'이미지 'ON'이미지와 False
  3. 는 그런 다음 ON 사진을 선택, 바로 다음 작업을 수행 한 다음 원하는대로을 강조

    MyArray.Select(function(x) x.Tag = True) 
    
  4. ,