2009-11-29 4 views
3

ListView에서 행을 어떻게 삭제합니까? 삭제할 행을 선택해야하고 행을 삭제하려면 명령 단추가 경고 메시지와 함께 삭제합니다. 그 코드는 무엇이 될까요?버튼을 사용하여 VB6 ListView에서 행 (항목)을 제거하는 방법은 무엇입니까?

+1

내 대답이 유용 할 경우 투표를 통해 표시하십시오. 또한, 귀하의 문제가 해답에 의해 해결되었고 다른 해답을 기대하거나 필요로하지 않는 경우, 해답도 수락하십시오. 이전에 물어 보았던 다른 두 가지 질문에 대해서도 이렇게 할 수 있습니다. 할 일은 예의 바르고 미래의 질문은 유용한 답을 얻게 될 것입니다. – mdb

+0

MDB가 맞습니다. 스택 오버플로. 다른 포럼과는 조금 다르게 작동합니다. – MarkJ

답변

6

당신에게 이미 생성의 ListView (ListView1)과 버튼의 클릭 이벤트를 가정하면 더블 클릭에 의해, (의이 단추 1을 부르 자)에는 다음과 같이 갈 것입니다 수 코드는 다음과 같이 표시됩니다.

private sub Button1_Click() 
    if ListView1.SelectedItem is nothing then exit sub 

    if MsgBox("Do you really want to delete?", "Question", vbYesNo) = vbYes then 
     ListView1.ListItems.Remove ListView1.SelectedItem.Index 
    end if 
end sub 
0

이미 사용했던 컨트롤과이를 수행하기 위해 이미 작성한 코드는 무엇입니까? (이 정보를 편집하여 질문에 추가 할 수 있습니다.)

어쨌든 적어도 ListView 컨트롤 (예 : ListView1)과 Button 컨트롤 (예 : DeleteRow)이 있다고 가정하고 해당 버튼의 클릭 이벤트 인 DeleteRow_Click에 대해 알고 있다고 가정합니다 (그렇지 않은 경우에는 양식 디자이너, 그리고 당신이 무슨 뜻인지 알게 될거야).

이제 DeleteRow_Click 이벤트에 일부 코드를 추가해야합니다. 몇 가지 힌트 :

  • ListView에서 현재 선택된 행 (항목)은 ListView1.SelectedItem입니다. SelectedItem은 유용한 속성을 가진 개체입니다. 편집기에서 VB의 개체 탐색기 및/또는 Intellisense를 사용하여 이러한 개체를 탐색 할 수 있습니다. 또한 ListView에서 NO 항목을 선택하면 어떻게 될지 고려하십시오. 또한 SelectedItem을 변수에 할당하는 줄에 중단 점을 넣은 다음 응용 프로그램을 실행하고 단추를 클릭하면 디버거를 사용하여 검사 할 수 있습니다 목록 상자에서 항목을 먼저 선택하지 않아도됩니다 (실제 응용 프로그램에서는 항목이 선택 될 때까지 버튼을 비활성화하지만 여기서는 자신보다 앞서는 것은 아닙니다 ...)

  • ListView1에는 ListItems라고하는 여러 항목이 있으며 F2 또는 Intellisense를 사용하여 탐색 할 준비가 된 유용한 속성 및 메서드 (예 : .Remove ...)가 있습니다.

  • 사용자에게/그녀는 전체에 대해 정말로 확신한다. moval 것, MessageBox 함수를 살펴보십시오 :이 함수는 약간의 까다 롭습니다. 기본 Windows API 호출에 꽤 직접 매핑되기 때문에이 함수는 다소 까다 롭습니다. 그러나 일반적인 생각은 어떤 플래그 값을 (함께 추가하여) 전달하여 어떤 종류의 원하는 메시지 상자 (icon- 및 button-wise). 그런 다음 반환 값을 확인하여 사용자가 선택한 단추를 확인합니다. 그래서

    :

+0

답변 해 주셔서 감사합니다. – gibz357

관련 문제