1. 리스트뷰에 데이터 입력하기

위와 같이 5개의 컬럼으로 이루어진 리스트뷰에 데이터를 넣는다.
'첫번째 컬럼에는 그냥 Add 메쏘드 사용. 왜 그런지는 나도 몰라;
lv_main.ListItems.Add , , "123456123456"
'두번째부터 마지막 컬럼까지는 Subitems(index) Property를 이용해서 값을 입력한다.
lv_main.ListItems(lv_main.ListItems.Count).SubItems(1) = "HST ITEM"
lv_main.ListItems(lv_main.ListItems.Count).SubItems(2) = "19.99"
lv_main.ListItems(lv_main.ListItems.Count).SubItems(3) = "1"
lv_main.ListItems(lv_main.ListItems.Count).SubItems(4) = "HST"
이후에도 위와 같이 입력하면 자동으로 다음열로 이동하며 데이터를 넣는다. 우왕~ 신기하다!
2. 열을 선택한 후에 그 열의 모든 데이터를 가져오기

위와 같이 선택한 열의 데이터를 모두 가져오고 싶으면
Private Sub lv_main_DblClick()
'데이터를 넣을 변수 선언
Dim str0, str1, str2, str3, str4 As String
'첫번째 데이터는 이렇게
str0 = lv_main.SelectedItem.Text
'두번째부터 마지막까지는 이런식으로 ListSubItems(index).Text를 써서 가져오면 된다.
str1 = lv_main.SelectedItem.ListSubItems(1).Text
str2 = lv_main.SelectedItem.ListSubItems(2).Text
str3 = lv_main.SelectedItem.ListSubItems(3).Text
str4 = lv_main.SelectedItem.ListSubItems(4).Text
'이건 그냥 잘 가져오나 확인하는 메시지박스
MsgBox (str0 & " " & str1 & " " & str2 & " " & str3 & " " & str4)
End Sub
만약 리스트뷰에 입력된 데이터를 수정하고 싶으면 이런식으로 가져온 값을 텍스트박스에 넣고 수정한 후 수정된 값을 다시 업데이트하면 된다.
3. 리스트뷰에서 선택한 열 삭제하기
일단 Dim IsEnableDelete As Boolean 으로 변수를 선언한 후 false로 초기화한다.
Private Sub lv_main_Click()
'리스트뷰에서 삭제하고 싶은 행을 선택해야 변수값이 True로 바뀌면서 삭제가능 상태가 된다
IsEnableDelete = True
End Sub
그리고 리스트뷰에서 클릭이벤트가 발생하면(즉 지우기 원하는 열을 마우스로 선택했다는 뜻) 변수를 true값으로 바꾼다. 이제 선택한 열을 지울 준비가 되었다는 의미.
Private Sub cmd_delete_Click()
'선택되어 있는 행이 없으면 서브루틴 종료
If Not IsEnableDelete Then Exit Sub
If MsgBox("선택한 아이템을 삭제하시겠습니까?", vbOKCancel, "아이템 삭제") = 1 Then
'선택되어 있는 행을 삭제한 후 변수를 다시 초기화시킨다
lv_main.ListItems.Remove (lv_main.SelectedItem.Index)
End If
IsEnableDelete = False
End Sub
버튼을 하나 만들고 클릭이벤트를 위와 같이 작성한다. 삭제가능변수를 만들지 않으면 선택이 안되어있어도 삭제가 되는 현상이 발생하더라...
'ProjectMyPOS' 카테고리의 다른 글
| VB6 - VB코드편집창에서 마우스휠 사용(윈10 64비트) (0) | 2024.06.12 |
|---|---|
| VB6 - 인쇄하기 (0) | 2024.06.12 |
| VB6 - 폼의 종료버튼 동작하지 않게 하기 (0) | 2024.06.12 |
| VB6 - KeyDown Event (0) | 2024.06.12 |
| VB6 - ADO 연결 및 사용방법 (0) | 2024.06.12 |