33
1 Visual Basic 6.0 기기 기기

Visual Basic 6.0 기본 문법

  • Upload
    leanna

  • View
    174

  • Download
    4

Embed Size (px)

DESCRIPTION

Visual Basic 6.0 기본 문법. 프로젝트 (*.vbp). 클래스 모듈 (*.cls). 폼 모듈 (*.frm). 표준 모듈 (*.bas). 프로시저 , 형식 , 데이터 선언과 정의만 포함하는 파일을 의미함 . 어떤 기능을 공동으로 사용할 수 있도록 하기 위하여 모듈을 작성한다 . 모듈은 * .bas 로 저장 . 클래스는 도구상자에 있는 컨트롤을 말한다 . 표준도구상자에 있는 컨트롤과 같이 어떤 기능을 수행하는 클래스를 새로 만들 - PowerPoint PPT Presentation

Citation preview

Page 1: Visual Basic 6.0 기본 문법

1

Visual Basic 6.0 기본 문법

Page 2: Visual Basic 6.0 기본 문법

2

1. 프로그램 작성하기 전에 (1)

프로젝트 (*.vbp)

표준 모듈(*.bas)

폼 모듈 (*.frm)

클래스 모듈 (*.cls)

프로시저 , 형식 , 데이터 선언과 정의만 포함하는 파일을 의미함 .

어떤 기능을 공동으로 사용할 수 있도록 하기 위하여 모듈을 작성한다 .

모듈은 *.bas 로 저장

폼은 통합개발 환경 초기화면에서 폼 편집 창에 있는 빈 윈도우가 폼이다 .

도구상자의 컨트롤을 이 폼에 디자인하여 화면을 설계한다 .

*.frm 으로 저장

클래스는 도구상자에 있는 컨트롤을 말한다 . 표준도구상자에 있는 컨트롤과 같이 어떤 기능을 수행하는 클래스를 새로 만들 때 이 파일을 작성한다 . 클래스는 *.cls 로 저장

Page 3: Visual Basic 6.0 기본 문법

3

1. 프로그램 작성하기 전에 (2) - 모듈이란 : 폼과 코드를 기술한 하나의 기능적 단위를 말함 - 모듈 내부 . 선언부 . 이벤트 프로시저 : 이벤트와 관련된 프로시저 . 일반 프로시저 : 이벤트와 관련없는 프로시저 . 메서드로 구성됨

Page 4: Visual Basic 6.0 기본 문법

4

프로그램 기초 주석

– 작은 따옴표 (‘) 사용 – 작은 따옴표 뒤의 문자열은 명령문으로 처리되지 않

음 . – 명령문 뒤의 부가설명 하기 위해 주로 사용함 .– 예 ) frmForm.cls ‘ 객체 frmForm 의 화면을 지운다 .

비주얼베이직은 대소문자 구분하지 않음

Page 5: Visual Basic 6.0 기본 문법

5

변수 / 연산자 그리고 제어문

목표– 변수 및 배열 관련 데이터형 , 선언방법과 변환함수를

알아보자 .– 연산자의 종류와 연산우선순위를 알아보자 .– 제어문의 종류와 특징을 알아보자

Page 6: Visual Basic 6.0 기본 문법

6

1. 상수란 특징

– 프로그램 작성시 값이 주어짐– 프로그램이 실행되는 동안에 그 값이 변하지 않음– 일반 변수와 구분 위해 대문자 표기 권장

종류– 시스템 정의 상수

• 컨트롤에 의해 제공되는 상수 • 접두어 vb 로 시작됨 . 예 ) vbYellow 노랑색로 확정되어 있는 상수값임

– 사용자 정의 상수 • Const 문을 사용하여 사용자가 정의 하는 상수임• 사용형식

– Const PI = 3.14159

Page 7: Visual Basic 6.0 기본 문법

7

2. 변수 변수의 개념

– 의미• 어떤 관계나 범위 내에서 임의의 값이 변할 수 있는 수 • 변수를 선언하면 데이터 형식 (Data Type) 에 맞는 기억장소를

할당받아 사용할 수 있고 그 기억장소의 데이터를 저장하거나 저장된 데이터를 꺼내어 사용할 수 있다 .

Page 8: Visual Basic 6.0 기본 문법

8

변수의 선언과 사용법– 선언 방법

– 선언 규칙• 첫번째 문자는 영문자나 한글이어야 하고 기호나 숫자는 사용할 수

없다 . • 예약어 (Sub, Private, End 등 ) 를 사용할 수 없다 . • 255 자를 초과할 수 없다 . • 한글 , 영문자 , 숫자 , 밑줄 (_) 만 사용가능함 . 그 외의 특수 기호는

사용할 수 없다 . • 변수명끝에 형지정기호 (%,&,!,#,@,$) 의조합된 형태로 이루어질 수도

있다 .

Dim/Private/Public/Redim/Static 변수명 [As 데이터형식 ]

Page 9: Visual Basic 6.0 기본 문법

9

• 명시적 선언– Dim 과 같은 변수 선언자를 사용해서 변수를 선언한 후 사용 – 예

• 묵시적 선언– 변수사용전에 별도의 선언없이 사용하는 경우를 말함 – 변수의 데이터형식은 저장되는 값에 따라 자동으로 형이 결정– 예

Dim Kor As Integer ' 정수를 저장하기 위한 Kor 변수 선언 Kor = 20 'Kor 변수에 20 저장

Kor = " 홍길동 " 'Kor 변수에 “홍길동” 저장

단 , Option Explicit 를 일반 _ 선언에 지정하면 반드시 사용되는 변수를 선언해야 한다 .

Page 10: Visual Basic 6.0 기본 문법

10

• 변수 선언자의 종류– 선언되는 위치에 따라서 변수를 사용할 수 있는 영역이 결정

선언 영역에 따른 적용 범위 선언 영역에 따른 적용 범위

Page 11: Visual Basic 6.0 기본 문법

11

데이터 형식– 값을 표현하기 위한 최소 단위 하나하나를 컴퓨터

메모리에 저장하는 방법을 결정하는 것을 말함 예 ) 정수형태는 2 바이트내의 -32768 ~ 32767 사이의

소수점이 없는 숫자만 저장하라 .

– 지정 이유 : 데이터형식마다 컴퓨터 메모리를 차지하는 양이 다르기 때문임 .

– 만일 데이터형식을 지정하지 않고 변수선언시 기본값으로 variant 형식이 됨 .

데이터형식 (Data Type)

Page 12: Visual Basic 6.0 기본 문법

12

• 데이터 형식데이터형식 (Data Type)

정수실수

문자열

이진데이터

Page 13: Visual Basic 6.0 기본 문법

13

– 형지정기호• % : 정수형 (integer)

– 예 ) num% = 55• & : 롱정수형 (Long)

– 예 ) num& = 22• ! : 단정도 실수형 (single)

– 예 ) num! = 22.1• # : 배정도 실수형 ( double)

– 예 ) num# = 10.234• $ : 문자열 (String)

– 예 ) str$ = “ 안녕”• @ : 화폐형 (Currency)

– 예 ) aa@ = 20000000

데이터형식 (Data Type)

Page 14: Visual Basic 6.0 기본 문법

14

Currency 형– 주로 금액저장시 사용됨

– 소숫점 이하 4 자리와 소숫점 이상 15 자리까지 숫자를 저장할 수 있는 데이터형

– 사용예

• 예 ) Dim cur as Currency cur = 123.567856 print cur

데이터형식 (Data Type)

123.5679123.5679

Page 15: Visual Basic 6.0 기본 문법

15

문자열형 (String)– 문자들을 사용하기 위한 형 – 변수에 값 할당시 이중따옴표 (“ “) 로 둘러싸야 함– 선언방법

• dim str as string str = “ 안녕”

– 문자열의 연결 : “+ 연산자” 또는 “ & 연산자” 사용

데이터형식 (Data Type)

예 2) A = 5 B= “ Man” Print A & B 5 Man 출력

예 1) print “queen ” + “Elizabeth” queen Elizabeth 출력

Page 16: Visual Basic 6.0 기본 문법

16

부울형 (Boolean)– 참이나 거짓 (True , False) 으로 표현

• 예 ) 딸기는 검은색이다 ? 결과 : false

– 수식의 비교 결과에 활용

– 선언• Dim 변수명 as Boolean

예 ) Dim bBooltest as Boolean

bBooltest = 123 < 456

print bBooltest 결과 : True

데이터형식 (Data Type)

Page 17: Visual Basic 6.0 기본 문법

17

정수형 (Integer, long)– Integer : 2 바이트 크기 , -32,768~32,767– long : 4 바이트 크기 , -2,147,483,648 ~ 2,147,483, 647

– 선언방법 1• Dim 변수명 as Integer

예 ) Dim iMyNum as Ingeger

iMyNum = 2500

• Dim 변수명 as long

예 ) Dim Lnum as Long

Lnum = 2147483647

– 선언방법 2 : dim 선언 없이 접미어로 자료형식 결정 • iMynum% = 2500 ‘ integer

• Lnum& = 2147483647 ‘Long

데이터형식 (Data Type)

Page 18: Visual Basic 6.0 기본 문법

18

Date 형– 날짜와 시간을 표시– 국가별 설정에 따라 조금씩 달라짐

예 ) 미국 월 / 일 / 년 한국 년 / 월 / 일

– # 기호 사용하여 date 형의 값을 표시• 예 ) Dim D as Date

D = #03/12/2006 11:20:35 PM#

print D

데이터형식 (Data Type)

Page 19: Visual Basic 6.0 기본 문법

19

가변형 (Variant)– 가변형으로 선언된 변수는 모든 종류의 값을 가짐

예 ) Dim VarNum [as variant] -> 가변형으로 선언

VarNum = 255 -> “VarNum” 는 정수값

VarNum = "Home“ -> “VarNum” 는 문자열

VarNum = -2.314 -> “VarNum” 는 부동형값

• 사용은 편리하나 메모리의 낭비가 있음

• 숫자는 16 바이트 , 문자는 22 바이트 + 문자열 길이를 가지게 됨

데이터형식 (Data Type)

Page 20: Visual Basic 6.0 기본 문법

20

선언 예제 Dim Count As Integer

Dim Count % ‘ Count 를 정수형 변수로 선언 Dim Address As String Dim Address$ ‘ Address 를 문자열 변수로 선언

Dim Check As Boolean ‘ Check 를 논리형 변수로 선언

데이터형식 (Data Type)

Count = 10

Address = “Hi!!!”

Check = true

Page 21: Visual Basic 6.0 기본 문법

21

[ 실습하기 ] 성적 계산하기 폼에 컨트롤 추가하고 속성 설정

Page 22: Visual Basic 6.0 기본 문법

22

버튼 컨트롤 ( 계산 ) 의 이벤트 핸들러 작성Private Sub cmdSum_Click() Dim Kor, Mat, Eng, Total As Integer Kor = Val(txtKor.Text) Mat = Val(txtMath.Text) Eng = Val(txtEng.Text) Total = Kor + Mat + Eng lblOutput.Caption = Str(Total) End Sub

Page 23: Visual Basic 6.0 기본 문법

23

Val 함수 문자열 형태의 숫자를 계산이 가능한

숫자로 변환하는 함수 형식 : val( 문자열형태의 숫자 ) 사용법

– Dim MyValueMyValue = Val("2457")   2457 을 반환합니다 .MyValue = Val(" 2 45 7")   2457 을 반환합니다 .MyValue = Val("24 and 57")   24 를 반환합니다 .

Page 24: Visual Basic 6.0 기본 문법

24

프로그램 실행

Page 25: Visual Basic 6.0 기본 문법

25

연산자 산술 연산자

– 수학적 계산을 수행하는 연산자

비교 연산자

Page 26: Visual Basic 6.0 기본 문법

26

• 비교 연산자 사용 예Dim MyResult, Var1, Var2

MyResult = (45 < 35) ' False 를 반환 . MyResult = (45 = 45) ' True 를 반환 . MyResult = (4 <> 3) ' True 를 반환 . MyResult = ("5" > "4") ' True 를 반환 .

Var1 = "5" : Var2 = 4 ' 변수를 초기화 . MyResult = (Var1 > Var2) ' True 를 반환 .

MyResult = 10 +20 < 10-20 ' False 를 반환 .

Page 27: Visual Basic 6.0 기본 문법

27

– IS 연산자• 두 개체가 가리키는 변수가 같은 경우에는 True 를 , 다르면 False 를 반환하는 연산자 • 구문 형식• 예

결과 = 개체명 1 Like 개체명 2

Private Sub Command1_Click() Set 폼객체 = Form1 Set 라벨객체 = Label1 Set 라벨 1 객체 = Label1

Label1.Caption = " 폼객체는 라벨객체이다 = " & Chr(13) & Chr(10) & _ Format( 폼객체 Is 라벨객체 ) Label2.Caption = " 라벨 1 객체는 라벨객체이다 = " & Chr(13) & Chr(10) & _ Format( 라벨 1 객체 Is 라벨객체 )End Sub

Page 28: Visual Basic 6.0 기본 문법

28

– Like 연산자 • 매개변수를 사용하여 두 문자열을 비교하기 위해 사용• 구문 형식

• 문자열과 패턴이 맞으면 True 를 , 일치하는 것이 없으면 False 반환• 문자열과 패턴 중 하나가 Null 이면 결과는 Null 반환 .

결과 = 문자열 Like  패턴

매개변수와 의미매개변수와 의미

*를

Page 29: Visual Basic 6.0 기본 문법

29

– 예

Private Sub Command1_Click()     Label1.Caption = " 대한민국 Like 대한민국 = " & _                       Format(" 대한민국 " Like " 대한민국 ")     Label2.Caption = " 대한민국 Like 대한 *= " & _                       Format(" 대한민국 " Like " 대한 *")     Label3.Caption = " 대한민국 Like 대 ? 민국 = " & _                       Format(" 대한민국 " Like " 대 ? 민국 ")     Label4.Caption = “KOREA Like K[I-O]REA = " & _                       Format("KOREA" Like "K[I-O]REA") End Sub

Page 30: Visual Basic 6.0 기본 문법

30

논리 연산자– 참과 거짓을 나타내는 True, False 로 , AND, OR, XOR, EQV, IMP 연산을 수행하여 True, False 값을 출력하는 연산자

연결 연산자– 문자열을 연결하기 위해 사용– &, +

Page 31: Visual Basic 6.0 기본 문법

31

그 외 연산자– : ( 콜론 ) 두 문장을 한 줄에 작성할 경우

사용 • 예 ) A=10 : B=20

– _(underbar) 한 문장을 두 줄로 작성할 경우 사용

예 ) Label1.caption = “ 두 수의 합은 “ & _ tot & “ 이다”

Page 32: Visual Basic 6.0 기본 문법

32

연산자의 우선 순위

연산자의 우선 순위에 따른 계산연산자의 우선 순위에 따른 계산

Page 33: Visual Basic 6.0 기본 문법

33

2. 배열선언 배열

- 배열이란 동일한 데이터형을 가진 하나 이상의 자료를 하나의 변수이름으로

정의한 것을 말한다 .

- 배열은 배열명과 첨자로 구성되며 , 첨자 (Index) 의 개수에 따라 배열이 1 차원 , 2

차원 , 3 차원 배열로 분류된다 .

- 각각의 데이터 기억 저장소를 배열의 요소 (Element) 라고 부르며 , 이러한 배열

요소를 구분하는 것이 첨자이다 .

- 또한 , 데이터베이스와 연결해서 레코드의 필드내용을 보여주는 동시에 필드내

용을 수정하는 경우에도 사용한다 .

1 차원 배열선언 : Dim strArray(4) As String2 차원 배열선언 : Dim intArray(2, 3) As Integer3 차원 배열선언 : Dim dblAry(4, 2, 3) As Double