원래 VB6에서 Variant 배열이었던 배열이 있습니다. VB6에서SetValue/GetValue 대 인수를 통해 배열에 직접 액세스하기
예 번호 :
ListBoxDrawings.List(X1, Y1) = myArray(X2, Y2)
myArray(A, B) = ListBoxDrawings.List(I, C)
ArtinSoft's VBUC 통해 실행 한 후, 그 값은 & GetValue
SetValue
사용하여 처리된다. VB.NET에서
예제 코드 : VB.NET는 변형을하지 않기 때문에 이 (ListView에로의 변환을 무시는)
ListViewDrawings.Items(X1).SubItems(Y1).Text = CStr(myArray.GetValue(X2, Y2))
myArray.SetValue(ListViewDrawings.Items(I).SubItems(C).Text, A, B)
, 나는 배열은 2 차원 문자열 배열로 입력되어야한다는 것을 알아 냈어 . GetValue/SetValue를 사용할 이유가없는 것 같습니다. 전자는 Object를 반환하고 후자는 Object를 가져옵니다. 이것은 오류를 가져올 수있는 무의미한 추가 단계처럼 보이는 변수에 할당하려는 경우 반환 된 객체를 문자열 (Cstr)로 형 변환해야한다는 것을 의미합니다. 또한 메소드에 많은 오버로드가 있기 때문에 코드가 명확하지 않을 수 있습니다. SetValue/GetValue을 사용하면 어떤 이점이 있습니까? 아니면 그냥 VBUC의 변형을 변환하고 원본 코드처럼 배열에 직접 액세스하는 것으로 간주해야합니까?/받기 설정 방법이없는
VB.NET :
ListViewDrawings.Items(X1).SubItems(Y1).Text = myArray(X2, Y2)
myArray(A, B) = ListViewDrawings.Items(I).SubItems(C).Text
그래서 GetValue/SetValue 메서드를 사용하지 않아도됩니다. – Wingman4l7
GetValue/SetValue에는 이점이 없으며 지적한 바와 같이 많은 단점이 있으므로 강력한 형식의 String 배열을 대신 사용하십시오. – tcarvin