Presentation is loading. Please wait.

Presentation is loading. Please wait.

9.3 데이터컨트롤을 제어하는 프로그램 9.4 DBGrid를 사용하는 프로그램

Similar presentations


Presentation on theme: "9.3 데이터컨트롤을 제어하는 프로그램 9.4 DBGrid를 사용하는 프로그램"— Presentation transcript:

1 9.3 데이터컨트롤을 제어하는 프로그램 9.4 DBGrid를 사용하는 프로그램
9. 데이터베이스-2 9.3 데이터컨트롤을 제어하는 프로그램 9.4 DBGrid를 사용하는 프로그램

2 9.3 데이터 컨트롤을 제어하는 프로그램 프로그램 개요
9.3 데이터 컨트롤을 제어하는 프로그램 프로그램 개요 데이터 컨트롤을 사용하지 않고 명령어 버튼을 이용하여, 자료보기를 이동할 수 있게 함. 이전, 다음, 처음, 끝 버튼 추가 수원과학대학 컴퓨터정보과 1학년

3 9.3 데이터 컨트롤을 제어하는 프로그램 이전 버튼 코딩
9.3 데이터 컨트롤을 제어하는 프로그램 이전 버튼 코딩 우선 하나 이전으로 가서, 파일의 시작이면 다시 다음 레코드로 이동한다. Private Sub 이전_Click() Data1.Recordset. If (Data1.Recordset.BOF = True) Then End If End Sub BOF : Begin Of File EOF : End Of File 하나 이전의 레코드로 포인터를 이동시키는 메소드 하나 다음의 레코드로 포인터를 이동시키는 메소드 수원과학대학 컴퓨터정보과 1학년

4 이전으로를 계속 누르면 레코드가 BOF 상태로 감 BOF 검사를 하지 않고 MovePrevious를 계속하는 경우
수원과학대학 컴퓨터정보과 1학년

5 9.3 데이터 컨트롤을 제어하는 프로그램 다음 버튼 코딩
9.3 데이터 컨트롤을 제어하는 프로그램 다음 버튼 코딩 우선 하나 다음으로 가서, 파일의 끝이면 다시 이전 레코드로 이동한다. Private Sub 다음_Click() Data1.Recordset.( ) If (Data1.Recordset.( ) = True) Then Data1.Recordset.( ) End If End Sub 수원과학대학 컴퓨터정보과 1학년

6 9.3 데이터 컨트롤을 제어하는 프로그램 처음 버튼 코딩 Private Sub 처음_Click()
9.3 데이터 컨트롤을 제어하는 프로그램 처음 버튼 코딩 Private Sub 처음_Click() Data1.Recordset.( ) End Sub 수원과학대학 컴퓨터정보과 1학년

7 9.3 데이터 컨트롤을 제어하는 프로그램 끝 버튼 코딩 Private Sub 끝_Click()
9.3 데이터 컨트롤을 제어하는 프로그램 끝 버튼 코딩 Private Sub 끝_Click() Data1.Recordset.( ) End Sub 수원과학대학 컴퓨터정보과 1학년

8 9.3 데이터 컨트롤을 제어하는 프로그램 리셋 버튼을 만들어보자 내용을 입력한뒤 수정하지 않고 취소하는 기능
9.3 데이터 컨트롤을 제어하는 프로그램 리셋 버튼을 만들어보자 내용을 입력한뒤 수정하지 않고 취소하는 기능 잘못 입력된 경우 취소할 수 있는 기능 (roll-back) 예전 자료를 다시 불러올수있게 하는 기능 Private Sub 리셋_Click() Data1.UpdateControls End Sub Private Sub Data1_Validate(Action As Integer, Save As Integer) Data1.UpdateControls End Sub 수원과학대학 컴퓨터정보과 1학년

9 9.3 데이터 컨트롤을 제어하는 프로그램 검색하기 버튼을 만들어보자. InputBox를 이용하여 검색이름을 입력받아
9.3 데이터 컨트롤을 제어하는 프로그램 검색하기 버튼을 만들어보자. InputBox를 이용하여 검색이름을 입력받아 해당 이름의 레코드를 검색하여 화면에 출력하는 기능 Data1.Recordset.FindFirst “필드=‘“ & 문자열 “’” Data1.Recordset.NoMatch = True : 결과없슴 검색된 경우 : Data1.Recordset.Fields(“필드”) 를 사용하여 해당 결과를 확인가능 수원과학대학 컴퓨터정보과 1학년

10 Private Sub 검색하기_Click() Dim 검색이름 As String
검색이름 = InputBox("검색할 이름은?") If (Data1.Recordset.BOF = False And Data1.Recordset.EOF = False) Then Data1.Recordset.FindFirst "이름='" & 검색이름 & "'" If (Data1.Recordset.NoMatch) Then MsgBox "이름이 없습니다", vbInformation, "다시 입력하세요" End If End Sub 수원과학대학 컴퓨터정보과 1학년

11 입력오류의 검증은 Validate 이벤트를 사용
학번 입력시 9자리의 숫자만 입력하고프다 9자리 숫자가 입력되지 않은 경우 다른 컨트롤로 제어권을 넘기지 않게 할수있슴. Private Sub 학번_Validate(Cancel As Boolean) 조건을 봐서 만족하지 않은 경우 Cancel = True 설정 Cancel이 True가 되면 현재의 컨트롤에서 벗어날 수가 없다. 수원과학대학 컴퓨터정보과 1학년

12 Private Sub 학번_Validate(Cancel As Boolean)
If (IsNumeric(학번) = False) Or (Len(학번) <> 9) Then MsgBox "학번은 숫자 9자리로 입력해주세요.", vbInformation + vbOKOnly, "입력오류" Cancel = True End If End Sub Private Sub 이름_Validate(Cancel As Boolean) If (IsNumeric(이름) = True) Or (LenB(이름) > 10) Then MsgBox "한글 5글자 이내의 이름을 입력해주세요.", vbInformation + vbOKOnly, "입력오류" 수원과학대학 컴퓨터정보과 1학년

13 중간고사와 기말고사에 대해 Validate 이벤트 프로시져 작성 숫자가 아닌 경우 (IsNumeric함수 사용)
“**고사는 0~100사이의 숫자로 입력해주세요.”라고 메시지를 출력하고, 텍스트 박스를 널(“”)로 초기화하고, Cancel을 True로 설정한다. 수원과학대학 컴퓨터정보과 1학년

14 9.4 DBGrid를 사용하는 프로그램 구성요소 확장
Microsoft Data Bound Grid Control 5.0(SP3) 수원과학대학 컴퓨터정보과 1학년

15 9.4 DBGrid를 사용하는 프로그램 폼1에 그리드를 추가 수원과학대학 컴퓨터정보과 1학년

16 9.4 DBGrid를 사용하는 프로그램 오른쪽 버튼 필드검색 편집(크기조절) 속성 일반 : headlines =2
레이아웃 > Column Alignment 매핑 학번, 이름 : 중앙정렬 수원과학대학 컴퓨터정보과 1학년

17 9.4 DBGrid를 사용하는 프로그램 프로그램 실행 수원과학대학 컴퓨터정보과 1학년

18 기타 등등 Private Sub Data1_Reposition() ‘ 자료의 위치 출력
Data1.Caption = "(" & (Data1.Recordset.AbsolutePosition + 1) & " / " & Data1.Recordset.RecordCount & ")“ 입력하기.Enabled = True 수정하기.Enabled = True End Sub Private Sub Refresh_Click() ‘ Refresh 버튼 Data1.Refresh End Sub Private Sub Delete_Click() ‘ 삭제하기 버튼 If (MsgBox("정말 삭제할까요?", vbQuestion + vbYesNo) = vbYes) Then Data1.Recordset.Delete End If 수원과학대학 컴퓨터정보과 1학년

19 학번순 정렬 테이블 디자인에서 인덱스 설정 인덱스 설정 전과 인덱스 설정 후의 레코드순서를 비교해 보자 2018-12-05
수원과학대학 컴퓨터정보과 1학년

20 입력된 자료의 평균 구하기 Private Sub TotalAvg() Dim i As Integer
Dim sum As Integer With Data1.Recordset .MoveFirst ‘ 첫번째 레코드로 이동 For i = 1 To .RecordCount ‘ 첫 레코드부터 마지막 레코드까지 sum = sum + .Fields("평균") ‘ 평균값을 더해나감 .MoveNext ‘ 다음 레코드로 이동 Next .MovePrevious ‘ 이전 레코드로 이동 End With ‘ 평균의 합을 레코드 개수로 나누어 전체 평균을 구함 전체평균.Caption = "전체 평균 : " & _ Round(sum / Data1.Recordset.RecordCount,2) End Sub 수원과학대학 컴퓨터정보과 1학년


Download ppt "9.3 데이터컨트롤을 제어하는 프로그램 9.4 DBGrid를 사용하는 프로그램"

Similar presentations


Ads by Google