Visual Basic 2010 4. 조건문
학습목표 조건 분기문 그룹박스, 체크박스, 라디오버튼, TabIndex 성적처리기로 익히는 체크박스와 라디오버튼 If문, Select case문 그룹박스, 체크박스, 라디오버튼, TabIndex 성적처리기로 익히는 체크박스와 라디오버튼 Visual Basic 2010
4.2 그룹박스, 체크박스, 라디오버튼, TabIndex 4.3 성적처리기로 익히는 체크박스와 라디오버튼 4.1 조건 분기문 4.2 그룹박스, 체크박스, 라디오버튼, TabIndex 4.3 성적처리기로 익히는 체크박스와 라디오버튼 Visual Basic 2010
조건 분기문 주어진 조건식에 따라 각기 다른 기능 수행하거나 주어진 조건식이 참인 경우만 기능을 수행할 경우 If문 If … Then … End If If … Then … Else … End If If … Then … ElseIf … Then … Else … End If Select 문 Visual Basic 2010
If … Then … End If 형식 수행 예제4-1 If <조건> Then <명령문> End If <조건>이 참인 경우만 <명령문>수행 예제4-1 입력된 값이 음수이면 양수로 변환 Private Sub Button1_Click(…) Handles Button1.Click Dim intData As Integer intData = CInt(txtInput.Text) If intData < 0 Then intData = -intData End If lblOut.Text = intData End Sub Visual Basic 2010
If … Then … Else … End If 형식 수행 예제4-2 <조건>이 참인 경우 <명령문1> 수행 <조건>이 거짓인 경우 <명령문2> 수행 예제4-2 입력된 값의 홀수,짝수 판별 Private Sub Button1_Click(…) Handles Button1.Click Dim intData As Integer intData = CInt(txtInput.Text) If (intData Mod 2) = 0 Then lblOut.Text = "짝수" Else lblOut.Text = "홀수" End If End Sub Visual Basic 2010
If… Then… ElseIf… Then… Else End If 형식 수행 <조건1>이 참인 경우 <명령문1> 수행 <조건2>이 거짓인 경우 <명령문2> 수행 … 위의 조건이 모두 거짓이면 <명령문n+1> 수행 If <조건1> Then <명령문1> ElseIf <조건2> Then <명령문2> ... ElseIf <조건n> Then <명령문n> Else <명령문n+1> End If Visual Basic 2010
예제4-1 문자열을 정수로 변환 Visual Basic 2010
예제4-1 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text 음수를 양수로 변환 Label Label1 숫자를 입력하세요 lblOut 결과 TextBox txtInput Button 음수를 양수로 Visual Basic 2010
예제4-1 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click Dim intData As Integer intData = CInt(txtInput.Text) '입력받은 값을 숫자(정수)화 If intData < 0 Then intData = -intData '음수이면 -를 붙여 양수화 lblOut.Text = intData End Sub Visual Basic 2010
예제4-1 실행화면 실행 화면 Visual Basic 2010
예제4-2 홀수, 짝수 판별 Visual Basic 2010
예제4-2 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text 홀수, 짝수 판별 Label Label1 숫자를 입력하세요 lblOut 결과 TextBox txtInput Button 홀수, 짝수 Visual Basic 2010
예제4-2 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click Dim intData As Integer intData = CInt(txtInput.Text) '입력받은 값을 숫자(정수)화 If (intData Mod 2) = 0 Then lblOut.Text = "짝수" Else lblOut.Text = "홀수" End If End Sub Visual Basic 2010
예제4-2 실행화면 실행 화면 Visual Basic 2010
예제4-3 성적을 학점으로(If문 이용) Visual Basic 2010
예제4-3 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text If문 이용 Label Label1 성적을 입력 lblOut 결과 TextBox txtInput Button 성적을 학점으로 Visual Basic 2010
예제4-3 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click Dim intData As Integer intData = CInt(txtInput.Text) '입력받은 값을 숫자(정수)화 If intData >= 90 Then lblOut.Text = "A" ElseIf intData >= 80 Then lblOut.Text = "B" ElseIf intData >= 70 Then lblOut.Text = "C" ElseIf intData >= 60 Then lblOut.Text = "D" Else lblOut.Text = "F" End If End Sub Visual Basic 2010
예제4-3 실행화면 실행 화면 Visual Basic 2010
Select case문 평가식 또는 변수에 따라 서로 다른 명령문 수행 형식 <명령문1> case 값2 <명령문2> ... case 값n <명령문n> Else case <명령문n+1> End If Visual Basic 2010
예제4-4 성적을 학점으로(Select문 이용) Visual Basic 2010
예제4-4 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Text Select문 이용 Label Label1 성적을 입력 lblOut 결과 TextBox txtInput Button 성적을 학점으로 Visual Basic 2010
예제4-4 코드 작성 Private Sub Button1_Click(...) Handles Button1.Click Dim intData As Integer intData = CInt(txtInput.Text) '입력받은 값을 숫자(정수)화 Select case intData \ 10 Case 10 Case 9 lblOut.Text = "A" Case 8 lblOut.Text = "B" Case 7 lblOut.Text = "C" Case 6 lblOut.Text = "D" Case Else lblOut.Text = "F" End Select End Sub Visual Basic 2010
예제4-4 실행화면 실행 화면 Visual Basic 2010
4.2 그룹박스, 체크박스, 라디오버튼, TabIndex 4.3 성적처리기로 익히는 체크박스와 라디오버튼 4.1 조건 분기문 4.2 그룹박스, 체크박스, 라디오버튼, TabIndex 4.3 성적처리기로 익히는 체크박스와 라디오버튼 Visual Basic 2010
그룹박스(GroupBox) 관련된 기능들을 묶어서 컨트롤 그룹을 만들 때 사용 체크박스나 라디오버튼들을 그룹으로 묶을 때 주로 사용 특히 여러 항목 중 하나만 선택해야 하는 라디오버튼의 관련 항목은 받드시 그룹박스를 이용해서 묶어야 함 그룹박스 Visual Basic 2010
예제4-5 성별 그룹박스에 두 개의 라디오버튼, 취미 그룹박스에 5개의 체크박스 배치 라디오버튼 그룹박스 체크박스 Visual Basic 2010
예제4-5 컨트롤 속성 설정 컨트롤 이름 속성 설정 Form Form1 Text 그룹박스 예 GroupBox GroupBox1 성별 GroupBox2 취미 RadioButton RadioButton1 남 Checked True RadioButton2 여 CheckBox CheckBox1 독서 CheckBox2 농구 CheckBox3 골프 CheckBox4 승마 CheckBox5 게임 Visual Basic 2010
체크박스(CheckBox) 주어진 여러 항목 중 복수개의 항목을 선택할 때 사용 마우스 클릭으로 선택된 상태( )와 선택이 해제된 상태( )가 토글 토글(Toggle) 키보드나 마우스 조작으로 두 상태가 번갈아 나타나는 것 Visual Basic 2010
예제4-6 성별 그룹박스에 두 개의 라디오버튼, 취미 그룹박스에 5개의 체크박스 배치 컨트롤 속성 설정 라디오버튼 그룹박스 레이블 체크박스 버튼 컨트롤 속성 설정 컨트롤 이름 속성 설정 Label lblResult2 Text 결과 Button btnResult2 취미 Visual Basic 2010
예제4-6 코드 작성 Private Sub btnResult2_Click(…) Handles btnResult2.Click lblResult2.Text = "" If CheckBox1.Checked = True Then lblResult2.Text = lblResult2.Text & "독서 " End If If CheckBox2.Checked = True Then lblResult2.Text = lblResult2.Text & "농구 " If CheckBox3.Checked = True Then lblResult2.Text = lblResult2.Text & "골프 " ‘승마, 게임도 같은 방식으로 코드 입력 End Sub Visual Basic 2010
라디오버튼(RadioButton) 체크박스와 유사한 기능을 가지고 있으나 다른 점은 그룹으로 지정된 여러 항목 중 하나만 선택할 수 있다는 점 마우스 클릭으로 선택된 상태( )와 선택이 해제된 상태( )가 토글 Visual Basic 2010
예제4-7 예제4-6을 수정하여 성별 결과 확인 컨트롤 속성 설정 라디오버튼 그룹박스 레이블 체크박스 버튼 컨트롤 이름 속성 Label lblResult1 Text 결과 Button btnResult1 성별 Visual Basic 2010
예제4-7 코드 작성 Private Sub btnResult1_Click1(...) Handles btnResult1.Click If RadioButton1.Checked = True Then lblResult1.Text = "남자" Else lblResult1.Text = "여자" End If End Sub Visual Basic 2010
TabIndex 마우스 조작 없이 키보드의 Tab 키를 이용하여 컨트롤 포커스를 이동시킬 수 있음 옵션버튼 내의 항목간 이동은 방향키 이동 Visual Basic 2010
4.2 그룹박스, 체크박스, 라디오버튼, TabIndex 4.3 성적처리기로 익히는 체크박스와 라디오버튼 4.1 조건 분기문 4.2 그룹박스, 체크박스, 라디오버튼, TabIndex 4.3 성적처리기로 익히는 체크박스와 라디오버튼 Visual Basic 2010
예제4-8 폼 디자인 레이블, 텍스트박스, 버튼, 그룹박스, 체크박스, 라디오버튼 사용 폼 디자인 Label GroupBox TextBox Label RadioButton TextBox CheckBox Button TextBox Label Visual Basic 2010
예제4-8 컨트롤 속성(1) 컨트롤 이름 속성 설정 Form Form1 Text 성적처리기 Label Label1 학번 과목명 및 수강여부 Label4 점수 Label5 합계 Label6 평균 Label7 등급 lblResult 학번 이름 학년 GroupBox GroupBox1 학년 GroupBox2 과목 RadioButton rbYear1 1학년 Checked True rbYear2 2학년 rbYear3 3학년 rbYear4 4학년 Visual Basic 2010
예제4-8 컨트롤 속성(2) 컨트롤 이름 속성 설정 TextBox txtSnum txtName txtIntro txtOS txtCA txtSE txtDB txtSum txtAvg txtGrade CheckBox chkIntro Text 컴퓨터입문 및 실습 chkOS 운영체제 chkCA 컴퓨터구조 chkSE 소프트웨어공학 chkDB 데이터베이스 Button cmdProc 처리 Visual Basic 2010
예제4-8 코드 작성(1) 학번, 이름, 학년을 출력해 보자 lblResult.Text = "" If rbYear1.Checked = True Then lblResult.Text = "1학년 " ElseIf rbYear2.Checked = True Then lblResult.Text = "2학년 " ElseIf rbYear3.Checked = True Then lblResult.Text = "3학년 " ElseIf rbYear4.Checked = True Then lblResult.Text = "4학년 " End If lblResult.Text = lblResult.Text & txtSnum.Text & " " & txtName.Text Visual Basic 2010
예제4-8 코드 작성(2) “컴퓨터입문 및 실습” 과목 처리 평균 구하기 If chkIntro.Checked = True Then subjectCount = subjectCount + 1 sum = sum + CInt(txtIntro.Text) End If 평균 구하기 avg = sum / subjectCount txtSum.Text = sum.ToString txtAvg.Text = avg.ToString Visual Basic 2010
예제4-8 코드 작성(3) 평균에 따른 등급 부여 Select Case (avg \ 10) Case 10 Case 9 txtGrade.Text = "A" Case 8 txtGrade.Text = "B" Case 7 txtGrade.Text = "C" Case 6 txtGrade.Text = "D" Case Else txtGrade.Text = "F" End Select Visual Basic 2010
예제4-8 실행 결과 Visual Basic 2010