··조회 12,468
콤보박스와 리스트박드관련 질문입니다
비베 왕초보 입니다.
학번,이름이 저장되 있는 순차 텍스트화일(20명)을 불러와서
성적입력하는 프로그램인데요
텍스트화일에서 불러온 학번(30명정도)을
콤보박스에 나타낸후 학번을 클릭하면
자동으로 이름(이름은 임의로 바꾸지 못하게함)이
리스트 박스에 나오는 방법좀 알려 주십시오.
며칠을 여기저기헤메다 결국 질문드립니다.
학번,이름이 저장되 있는 순차 텍스트화일(20명)을 불러와서
성적입력하는 프로그램인데요
텍스트화일에서 불러온 학번(30명정도)을
콤보박스에 나타낸후 학번을 클릭하면
자동으로 이름(이름은 임의로 바꾸지 못하게함)이
리스트 박스에 나오는 방법좀 알려 주십시오.
며칠을 여기저기헤메다 결국 질문드립니다.
댓글 1
비베를 다룬지도 오래되었고, 원래부터 많이 알지 못하여서 제대로 아는 바가 없습니다만 제가 아는 범위 내에서 설명드립니다.
먼저 다음과 같은 내용의 텍스트 파일을 만들어 c:\test 에 test.txt 로 저장합니다.
000001,홍길동
000002,임꺽정
000003,장길산
000004,홍경래
000005,전봉준
...
그리고 비베를 실행하여 폼에 콤보박스와 리스트박스를 하나씩 그리고 다음과 같이 코딩하면 됩니다.
찬찬히 살펴보시기 바랍니다.
'텍스트 파일에서 한번에 읽어올 수 있는 레코드 형태 지정
Private Type 학생관리
학번 As String * 6
이름 As String * 20
End Type
'파일에서 읽어온 레코드를 기억할 변수를 지정함. 사용자 정의형으로 선언
Dim udt학생 As 학생관리 '사용자 정의
Dim 배열이름(100) As String
Dim 배열번호 As Integer
Private Sub Combo1_click()
배열번호 = Combo1.ListIndex
List1.AddItem 배열이름(배열번호)
End Sub
'폼이 열리면 자동으로 실행되도록 함
Private Sub Form_Load()
Open "c:\test\test.txt" For Input As #1 Len = Len(udt학생)
i = 0
Do While Not EOF(1)
Input #1, udt학생.학번, udt학생.이름
Combo1.AddItem udt학생.학번
배열이름(i) = udt학생.이름
i = i + 1
Loop
End Sub
'폼이 종료되면 열린 파일을 닫음
Private Sub form_unload(cancel As Integer)
Close #fn
End Sub