1.파일 보기 프로그램 디자인(1) 기능 모든 드라이브/디렉토리를 검색 그림 파일인 경우 미리 보기 기능 텍스트 파일인 경우 확인 버튼으로 내용 확인 텍스트 파일은 제2의 폼에 보여준다. 폼을 더블 클릭하거나 돌아가기 버튼을 누르면 원래 폼으로 돌아온다. 취소 버튼은 파일 선택 취소 종료 버튼은 프로그램 종료 2019-01-16 수원과학대학 컴퓨터정보과 1학년
1.파일 보기 프로그램 디자인(2) 파일 시스템 컨트롤을 사용 (이름) = Form1 Caption = 파일 보여주는 프로그램 (이름) = Drive1 (이름) = Dir1 (이름) = Label1 Alignment = 1-오른쪽맞춤 Caption = 파일명 : (이름)=파일이름 Text=[공백] (이름)=확장자선택 Style=2-드롭다운 목록 (이름) = 파일보기버튼 Caption = 확인(&V) (이름) = 종료버튼 Caption = 종료(&X) (이름) = check1 (이름) = File1 Pattern= *.txt 2019-01-16 (이름) = 취소버튼 Caption = 취소(&C) 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(1) 파일 컨트롤들 파일을 관리 하기 위한 컨트롤들 세 컨트롤을 모두 사용 ( ) (DriveListBox) ( ) (DirectoryListBox) ( ) (FileListBox) 세 컨트롤을 모두 사용 드라이브 선택 디렉토리 검색 파일 선택 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(1) Drive1의 Change이벤트 드라이브를 선택하면 디렉토리 리스트가 바뀌어야 함 따라서 드라이브 정보를 디렉토리쪽으로 넘겨줌 Private Sub Drive1_Change() '현재 드라이브의 취득 End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(2) Dir1의 Change이벤트 디렉토리를 바꾸면 읽어올 파일 리스트가 바뀜 따라서 디렉토리 정보를 파일쪽으로 넘겨줌 Private Sub Dir1_Change() '현재 디렉토리 취득 End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(3) File1의 Click이벤트 및 DblClick이벤트 File1의 DblClick이벤트 파일을 클릭하면 해당 파일을 선택하는 의미 파일을 접근하기 위해 fullname을 만들어줌 미리 보기가 선택되어 있다면 이미지 파일인지 확인후 이미지를 보여줌 File1의 DblClick이벤트 파일을 더블클릭시 파일을 보겠다는 의미 새로운 창을 열어 해당 파일을 보여줌. 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(4) FullName의 생성 C:\TEMP\TEST.TXT의 경우 Dir1.Path : C:\TEMP 를 의미 File1.FileName : TEST.TXT 를 의미 so, Dir1.Path & “\” & File1.FileName -> C:\TEMP\TEST.TXT 단, C:\TEST.TXT와 같이 폴더없이 접근할 경우 Dir1.Path & File1.FileName 이어야 함. 그렇지 않으면 C:\TEMP\\TEST.TXT가 됨 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(5) 파일을 접근할때 다음과 같은 코드 기술이 필요 If Right(Dir1.Path, 1) = “\” Then 변수명 = Else End If 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(6) 프로젝트>모듈추가 새로운 모듈에 다음의 변수를 선언한다. fullname 변수 Form1 모듈과 FileForm모듈 모두에서 사용할 수 있는 문자열 변수 파일 이름을 전체 디렉토리 구조를 가지게 변환시킨 문자열 예) C:\Windows\System\Readme.txt Public fullname As String 2019-01-16 수원과학대학 컴퓨터정보과 1학년
Private Sub File1_Click() Dim 확장자 As String 확장자 = ( ) 파일이름.Text = File1.FileName If ( ) Then fullname = ( ) Else End If If ( )Then '미리보기가 선택됨. If()Then Image1.Picture = ( ) End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(6) 내장 함수 설명 LCase(문자열) : 문자열을 모두 ( ) 로 반환 UCase(문자열) : 문자열을 모두 ( ) 로 반환 Right(문자열, n) : 문자열의 ( ) n개 반환 Left(문자열, n) : 문자열의 ( ) n개 반환 LoadPicture(“파일명”) : 파일명에 해당하는 그림 파일을 열어서 파일포인터를 반환 LoadPicture() : 파일 포인터가 ( ). ( ) 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(7) 미리보기 구현 변수 설명 미리보기 체크가 되어있으면 파일의 확장자(확장자)가 “jpg”이나 “bmp”나 “gif”가 아니다.(그림 파일이 아니다.) 그림을 지워준다.(Image1.Picture = LoadPicture()) 파일의 확장자가 그림 파일이 맞다. 그림을 보여준다.(Image1.Picture = LoadPicture(fullname)) 변수 설명 fullname : 선택된 파일의 전체 파일명 확장자 : 선택된 파일의 확장자 세자리 2019-01-16 수원과학대학 컴퓨터정보과 1학년
2.파일 시스템 컨트롤 연동(8) 파일 시스템 에러 처리하기 (p.180) On Error GoTo 레이블명 에러가 발생시 지정한 곳(레이블)으로 이동해서 실행 동일 프로시저내에 레이블이 있슴 레이블은 뒤에 콜론이 있어야 함. 예)ErrorHandle: On Error Resume Next 발생한 에러 무시 그냥 다음 명령문 처리 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(9) 에러 정보 보관 속성 Drive1_Click이벤트의 에러처리 Err.Number : ( ) Err.Description : ( ) Drive1_Click이벤트의 에러처리 Private Sub Drive1_Change() On Error GoTo ERRHANDLE Dir1.Path = Drive1.Drive ERRHANDLE: MsgBox "에러번호 : " & Err.Number & vbNewline _ & Err.Description, vbCritical + vbOKOnly, _ "에러 정보" End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(10) ListBox 컨트롤 (p.156) 주요 메소드 여러 개의 항목을 나열 여러 개의 항목을 선택 가능 마우스 선택, Ctrl또는 Shift를 사용하여 선택 가능 주요 메소드 AddItem : ( ) RemoveItem : ( ) Clear : ( ) 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(11) ListBox의 주요 속성 속성 기능 List 리스트내 표시 항목 지정 ( ) 리스트내 항목의 인덱스 번호 Sorted 항목들의 정렬 여부 항목의 개수 MultiSelect 여러 항목 선택 가능 여부 0-없슴, 1-단순형, 2-확장형 NewIndex 제일 나중에 추가된 항목의 위치값 Style 항목들 앞에 체크 표시를 하는 지 여부 0-표준, 1-확인란 Style속성이 1이면 MultiSelect속성은 0만 가능 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(13) ComboBox 컨트롤 주요 메소드와 속성 펼침 목록 기능 제공 항목 중 하나만 선택할 수 있다. 주요 메소드와 속성 ListBox와 동일하지만 MultiSelect는 없고, Style은 다름 속성 기능 Style 0-드롭다운콤보 기본 펼침 목록(드롭다운 목록)에서 선택 또는 입력란에 직접 입력 1-단순콤보 드롭다운 목록 아님 입력란과 목록란을 별도 표시 2-드롭다운목록 드롭다운 목록 표시 입력란에 입력 불가능, 목록에서만 선택 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(14) 파일 종류 선택 콤보 박스 처리 폼 로드 될때 콤보 항목들을 추가 시켜야 함. Private Sub Form_Load() With 확장자선택 ( ) End With End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(15) 확장자선택_Click 코딩 Private Sub 확장자선택_Click() Select Case ( ) ( ) End Select End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(16) 취소버튼_Click 코딩 취소 버튼을 누르면 파일명 텍스트박스 내용이 없어진다. fullname에 저장되었던 선택된 파일이름이 없어진다. 파일 리스트 박스 초기화 미리 보기 그림도 없어진다. Private Sub 취소버튼_Click() ( ) End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(17) 종료버튼_Click 코딩 종료버튼 처리 Private Sub 종료버튼_Click() Dim answer As Integer answer = MsgBox() If answer = ( ) Then ( ) End If End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(18) 미리 보기 체크 박스 코딩 Private Sub Check1_Click() Dim 확장자 As String If ( ) Then '미리보기가 선택됨. 확장자 = ( ) If()Then Image1.Picture = ( ) fullname = "" Else End If Else '미리보기가 선택되지 않음 End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(19) 확인 버튼 처리를 위해 두번째 폼을 작성한다. (이름) = FileForm Caption = 파일 내용 보여주는 창 (이름) = Text1 Text = [공백] MultiLine = True ScrollBars = 3-양방향 (이름) = 돌아가기버튼 Caption = 돌아가기(&R) 2019-01-16 수원과학대학 컴퓨터정보과 1학년
3.파일 시스템 컨트롤 연동(20) 파일보기버튼_Click 코딩 FileForm의 되돌아가기 버튼 코딩 확인 버튼은 fullname의 선택된 파일을 새로운 창을 띄워 화면에 보여준다. FileForm의 되돌아가기 버튼 코딩 Private Sub 파일보기버튼_Click() ( ) End Sub Private Sub 돌아가기버튼_Click() ( ) End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
4.데이터 읽어들이기(1) 파일 맛보기 (p.304~) 순차파일 접근의 3모드 순차파일(Sequential File) 데이터를 처음부터 끝까지 순차적으로 읽고, 쓴다. 임의파일(Random File) 레코드 번호만 알면 해당 레코드를 직접 접근함. 순차파일 접근의 3모드 Input모드 : 처음부터 차례로 읽어들임(읽기 전용) Open 파일명 ( ) As #파일 번호 Input # 파일번호, 변수1, 변수2, …, 변수n 또는 Line Input #파일번호, 변수 Close #파일번호 2019-01-16 수원과학대학 컴퓨터정보과 1학년
4.데이터 읽어들이기(2) Output모드 : 처음부터 차례대로 새로운 데이터 입력 Append모드 : 맨 뒤에 새로운 데이터 추가 Open 파일명 For Output As #파일 번호 Write # 파일번호, 데이터1, 데이터2, … 데이터n 또는 Print #파일번호, 데이터1, 데이터2, … 데이터n Close #파일번호 Open 파일명 For Append As #파일 번호 Write # 파일번호, 데이터1, 데이터2, … 데이터n 또는 Print #파일번호, 데이터1, 데이터2, … 데이터n Close #파일번호 2019-01-16 수원과학대학 컴퓨터정보과 1학년
4.데이터 읽어들이기(3) FileForm에서 파일 읽어 보여주기 Private Sub Form_Load() Dim temp As String Dim readData As String readData = "" Open fullname ( )As #1 Do Until EOF(1) ( ) #1, temp readData = readData & temp & vbNewline Loop Close #1 Text1.Text = readData End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년
4.데이터 읽어들이기(4) 내장 함수 내장 상수 EOF(파일번호) BOF(파일번호) vbNewline = vbCrLf End Of File 파일의 끝에 도달하면 True 반환, 아니면 False반환 BOF(파일번호) Begin Of File 파일의 시작 위치이면 True반환, 아니면 False반환 내장 상수 vbNewline = vbCrLf A Carriage Return and followed by a Line Feed Chr$(13)+Chr$(10)와 동일 2019-01-16 수원과학대학 컴퓨터정보과 1학년
4.데이터 읽어들이기(5) 에러 처리 On Error GoTo ERRHANDLE ERRHANDLE: Private Sub Form_Load() Dim temp As String Dim readData As String On Error GoTo ERRHANDLE readData = "" Open fullname For Input As #1 Do Until EOF(1) Line Input #1, temp readData = readData & temp & vbNewline Loop Close #1 Text1.Text = readData Exit Sub ERRHANDLE: MsgBox "에러번호 : " & Err.Number & vbNewline _ & Err.Description, vbCritical + vbOKOnly, _ "에러 정보" End Sub 2019-01-16 수원과학대학 컴퓨터정보과 1학년