Programming/Visual Basic

비주얼베이직 기초강의

bcheul 2006. 10. 27. 09:56

비주얼 베이직 기초강의 제 1탄(1-10) ★

1) 비베프로젝트 제작 순서

작업설계 ☞ 화면디자인 ☞ 코딩 ☞ 디버그 ☞ 컴파일 ☞ 실행파일작성
(
무엇을 어떻게 할 것인지 확실하고 구체적인 계획을 세운 후 화면디자인은 연필로 간단히 스케치한 후 프로그램 코딩에 들어간다. 반복되는 부분은 프로시저로 간단히하며 주석을 꼭 삽입하여 나중에 프로젝트 분석에 도움이 되도록 한다.)

2) 코딩하는 방법론

lbldate.의 .을 입력하고 c를 입력하면 메뉴가 나오는데 선택한 후 Tab키를 누르면 전체가 나온다.
속정값의 설정은 개체명.속성명 = 설정값(예 : IblDate.Caption = "날짜와 시간")
(
코딩할 때 개체명을 입력한 후 점을 누르면 속성메뉴가 나오는데 나오지 않는 경우는 그 해당개체가 존재하는지 확인해야 하며 더불클릭을 하거나 Tab키를 누르면 메뉴가 확정된 후 커서가 옆으로 이어진다.)

3) 간단한 함수를 레이블에 표시

Ibldate.Caption = Date
(날짜를 나타냄)
Ibltime.Caption = Time
(시간을 나타냄)

4) 폼의 이벤트 설명

Activate
(폼이 액티브가 되었을 때 실행하는 처리를 기술한다.)
Initialize
(가장 처음에 실행할 처리를 기술한다.(보통은 초기화 처리))
Resize
(폼의 크기가 바뀌었을 때에 실행할 처리를 기술한다.)
Unload
(폼을 닫기 직전에 실행할 처리를 기술한다.)

5)타이머에 관하여

타이머(Timer)컨트롤의 Interval이라는 속성은 지정한 시간 간격으로 값을 지정(1000값이 1초)
(타이머 컨트롤을 폼에 배치한 후 Interval 속성에 숫자를 넣은 후(10정도) 더블클릭하여 코딩준비를 하고 Label1.Caption = Time를 입력하면 간단히 디지털 시계가 만들어 집니다.)

6)속성설정에 관하여

Label속성 ☞ 개체명.AutoSize =True/False
(표시하는 내용에 따라  개체의 크기를 자동으로 조정표시)
Label속성 ☞ 개체명.BorderStyle=0/1(
0을 지정하면 경계선 없이 1을 지정하면 움푹패인 경계선을 표시)
Alignment 속성(레이블에서 자료의 위치지정
0(왼쪽맞춤) , 1(오른쪽맞춤), 2(가운데맞춤)        
개체명.Visible = True/False
(개체를 화면에 표시할지 숨길지를 지정)
개체명.Font.Name = 문자열
(문자의 글꼴명을 지정)   개체명.Font.Size = 숫자 (문자의 크기를 지정)

7) 프레임 사용시 주의할 점

프레임을 사용할 경우는 프레임을 폼위에 첨부한 후 그 뒤에 프레임 속에 넣을 컨트롤을 첨부한다.
(폼에 먼저 컨트롤을 배치한 후 프레임을 그 위에 첨부하면 프레임에 종속되는 컨트롤이 되지 않는다.)

8)키보드로 해당포커스로 이동하기

엑세스키 ☞ Caption = 단가(&P)에서 &뒤에 표시한 내용은 실행시 Alt키를 누르고  뒷표시를 누르면 해당 컨트롤로 포커스가 이동한다.
(Label은 포커스를 갖지 못하므로 바로 다음의 텍스트 박스에 포커스가 이동됨으로써 바로 원하는 자료 입력이 가능합니다.)

9) 자동한영모드 설정

IMEMode속성 - 한글(10),영문(8)으로 자동입력속성설정
(한글이 입력될 텍스트 박스에 한/영키를 누르지 않고 한글을 적용하려면 디자인할 때 IMEMode속성을 한글(10)을 선택하여 놓으면 바로 전 텍스트가 영어로 설정되어있더라도 적용된 텍스트박스에 오면 저절로 한글모드로 바뀐다. 영어도 똑같이 설정하면 된다.)

10) 컨트롤에 알아보기 쉽게 이름붙히기

폼(frm),체크박스(chk),콤보박스(cbo),커맨드버튼(cmd),데이터(dat),디렉터리리스트박스(dir),드라이브리스트박스(drv),파일리스트박스(fil),프레임(fra),OLE컨테이너(ole),이미지(img),레이블(Ibl),라인(lin),리스트박스(lst),메뉴(mnu),옵션버튼(opt),픽쳐박스(pic),셰이프(shp),텍스트박스(txt),타이머(tmr)
(
예를 들어 수량을 입력받을 텍스트박스라면 [Txt수량]이라고 이름을 부여하면 해당 컨트롤이 텍스트박스인지 알 수 있으며 수량이라는 데이터를 받을 것이라는 것을 암시할 수 있다.)

★ 비주얼 베이직 기초강의 제 2탄(11-20) ★

11) 속성설정에 관한 이야기

탭인텍스란 Tab 키를 눌렀을때의 순서를 의미 TabIndex속성에서 일련번호로 탭인덱스 할당
(
컨트롤들을 순서대로 만들었을 경우는 텍스트 박스의 포커스를 옮길 때 Tab키를 누르면 자동으로 다음 텍스트 박스로 이동하지만 순서가 뒤바뀌어 만들면 포커스가 제멋대로 이동한다. 이때는 속성란의 Tab Index속성에서 일련번호를 차례차례 부여하면 순서대로 포커스가 이동된다.)

12) 메모형식처럼 힌트보여주기

툴힌트(ToolTipText)속성 ☞ 마우스포인터를 가져가면 메모형식으로 힌트를 보여주는 것
(
속성중에 ToolTipText속성은 우리가 프로그램상에서 도구들에 마우스를 갖다대면 노란글씨로 잠시 보여주는 힌트를 말하는 것입니다. 예를 들어 윈도우 시작메뉴에 마우스를 갖다대면 '시작하려면 이곳을 누르십시오' 하고 잠시 보였다가  마우스를 다른곳으로 이동하면 사라지는 기능과 같습니다.)

13) 폼에 배치한 컨트롤들을 맞추기

컨트롤의 배치를 맞추려면 Ctrl 키를 누르면서 컨트롤을 선택하고나서 메뉴의 형식에서 맞춤을 누른다.
(
물론 Shift키를 누르면서 하거나 마우스로 해당컨트롤들을 드래그한후 메뉴에서 형식을 선택해도 되며 선택된 컨트롤 중 테두리가 적색인 것을 기준으로 맞추어 준다.)
컨트롤의 크기를 맞추려면 Ctrl 키를 누르면서 컨트롤을 선택하고나서 메뉴의 형식에서 같은크기를 누른다.(
물론 Shift키를 누르면서 하거나 마우스로 해당컨트롤들을 드래그한후 메뉴에서 형식을 선택해도 되며 선택된 컨트롤 중 테두리가 적색인 것을 기준으로 크기가 같아진다.)

14) 컨트롤들의 값을 이동

텍스트박스의 값을 취득하려면 IblDanga.Caption = txtDanga.Text
(
텍스트박스의 값을 레이블에서 취득하는 경우이며 다른 컨트롤들도 개체명.속성=개체명.속성을 지정하면 해당 개체에 값을 다른 개체에서 취득하게 된다.)

15) 사칙연산 이외에 기타 알아두어야 할 연산자

연산자 ☞ \ (정수의 나눗셈), MOD(정수 나눗셈의 나머지), ^(제곱)
(
예를 들어 25 MOD 3을 하면 결과는 나머지값인 1이 된다.)

16) 변환 함수에 대하여

Val(문자열형을 숫자형으로 변환) , Str$(숫자형을 문자열형으로 변환)
(
예를 들어 Iblsei.Caption = Val(txtsogyei.Text) * 0.03와 같이 하여 텍스트박스에 있는 자료를 수치로 변환시켜 주어 우측에 있는 수치값과 곱셈연산을 할 수 있다.)

17) 숫자의 데이터 표시형식

숫자의 표시형식 변경 Format(데이타,표시형식) 예) lblsei.Caption = Format(Iblsei.Caption,"#,##0")
(
수치데이타 중 금액을 나타내는 데이터에 세자리 마다 콤마를 삽입하려면 ###,###으로 표시형식을 구성하며 연산후 소수자리수를 지정하여 출력하려면 ###.##하면 소수이하 두자리까지만 출력된다.)

18) 포커스 이동방법

지정한 개체로 포커스를 옮기는 명령 ☞ 개체명.SetFocus
(
명령코드로 개체명.SetFocus를 주면 해당하는 곳으로 포커스가 직접이동된다.)

19) 픽쳐박스에 그림그리기

개체명.Line ☞ 지정한 개체에 선이나 사각형을 그린다.(Line(x1,y1)-(x2,y2),[선색],B)
(
Picture1.Line (1500,500) - (5000,2000) ☞ 대각선이 그려집니다.)
(
Picture1.Line (1500,1000) - (5000,2000), , B ☞ 직사각형이 그려집니다.(B를 사용하면 사각형))
개체명.Circle ☞ 지정한 개체에 원이나 타원을 그린다.(Circle(x,y),반지름,[색,시작,끝,옵션]
(
Picture1.Circle (1500,1800), 900, , , , 0.7 ☞ 타원을 그립니다.(0.7은 가로,세로 비율값을 설정))
(
Picture1.Circle (1500,18000), 900 ☞ 원을 그립니다.)
개체명.Cls ☞ 그린선이나 원 등을 삭제한다.  

20) 폼에 대한 메서드

개체명.Show ☞ 지정한 개체명의 폼을 화면에 표시한다.(
해당폼에서 다른 폼으로 폼 이동시 사용)
개체명.Hide ☞ 지정한 개체명의 폼을 일시적으로 숨긴다.
(상대폼을 호출하고 자신의 폼을 숨길시 사용)

★ 비주얼 베이직 기초강의 제3탄(21-30) ★

21) 명령문을 구분하는 방법

: 는 여러개의 명령문을 한줄에 기술(
짧은 명령문을 한줄에 여러개 기술할 때 이용합니다.)
_ 는 한 개의명령문을 여러행으로 나눌 때 사용한다.(
긴 명령문을 여러줄에 걸쳐 기술할 때 사용)

22) 주석표시방법

프로그램 기술 중 '를 표시하면 주석(
좋은 프로그래머가 되기 위해서는 주석을 꼭 달아두는 습관을 가진다. 그래야만 다음에 프로그램을 볼 때 분석하기가 쉽기 때문)

23) 변수선언 방법의 하나

목록의 일반부분의 선언영역명령에서 Option Explicit 는 변수의 선언을 강제로 한다.  
(
이 선언명령을 이용하면 엉뚱한 변수의 출현시 에러가 발생하므로써 변수관리를 철저히 할 수 있다.)

24) 데이터형 지정방법

Dim 변수명 As 데이터형 (
데이터형 : Integer(정수형(2바이트)),Long(배장정수형(4)),Single(단정도실수형(4)),Double(배정도실수형(8)),Currency(통화형(8)) String(문자형))
(Boolean는 True와 False 값을 지정 Variant는 어떠한 데이터라도 가능(메모리소비 16바이트))
Date(현재의 날짜를 날짜형 데이터로), Year(날짜형데이터)
(예:Year(Date)- 현재의 날짜에서 연도(100~9999의정수)를 추출)
Time(현재의 시각을 날짜형 데이터로),Second(날짜형데이터)
(
예:Second (Time) -현재의 시각에서 초(0~59의 정수)를 추출)

25)Msgbox등에 나타나는 메시지의 줄바꿈

vbCrLf란 캐리지리턴을 의미하는 chr(13)과 라인피드를 의미하는 chr(10)를 조합한 내장 상수
(
예) Msgbox "안녕하세요" & vbCrLf & "최원철입니다" ☞ 메시지박스의 내용이 두줄로 나타남)

26) 기타 데이터형

Boolean는 True와 False 값을 지정 ☞
(주로 IF문의 플래그로 스위치 처리시 사용합니다.)
Variant는 어떠한 데이터라도 가능(메모리소비 16바이트) ☞ (
숫자,문자 모두 받을수 있지만 메모리 소비가 많고 보통 변수 선언을 하지 않으면 Variant로 인식하여 프로그램이 처리됩니다.)

27) 상수 선언

Const Sobiyeul = 0.03 (상수를 선언) - 날짜형 데이터를 지정하는 경우는 #를 양쪽에 붙인다.
(
상수로 값을 선언하면 프로그램내에서 변수의 값을 바꾸려고 하면 에러가 발생하여 처음 선언된 값을 그대로 유지하여 사용할 경우에 이용합니다.)

28) 프로시저

Sub 프로시저(제너럴 프로시저)는 여러곳에서 공통적으로 사용할 수 있으므로,같은 코드를 중복하여 기술하지 않아도 된다는 이점. 이벤트 프로시저 중간에 프로시저명만 기술하면 된다.
Function 프로시저가 Sub 프로시저와의 차이점은 값을 반환한다는 점이다. (
예) Function Roung(tep))
프로젝트안의 특정모듈에서만 한정하여 사용하는 경우 ☞ (
Private Sub 프로시저명())
프로젝트안의 모든 모듈에 사용하는 경우 ☞ (
Public Sub 프로시저명())

29) 동일한 개체를 요약하여 표현하는 방법

With 개체명                  
예)  With IblDate
    .속성명 =값                      
.Caption = "날짜와 시간"
    .속성명 =값                    
.Font.Size = 20
End With                          
 End With

30) 특정한 변수의 범위에 의한 처리

Select Case 변수명
     Case 범위1
     내용 ☞
지정한 변수명이 범위1내에 해당될때 처리되는 내용
     Case 범위2
     내용 ☞
지정한 변수명이 범위2내에 해당될때 처리되는 내용
     Case Else
     내용 ☞
모든 범위에 해당되지 않았을때에 처리되는 내용
     End Select

★ 비주얼 베이직 기초강의 제4탄(31-40) ★

31) 컨트롤 배열

같은 이름을 가진 배열은 컨트롤배열이 되어 Index속성에서 표시
(
텍스트박스를 폼에 배치하고 나서 복사를 하고 붙혀넣기를 수행하면 컨트롤 배열을 선언할 것인가를 묻는 박스에 [예]를 선언하면 컨트롤배열이 만들어지면 같은 이름으로 컨트롤이 생긴다. 이러한 방법을 사용하면 반복문을 이용하여 여러 컨트롤을 한꺼번에 비교하여 물을 수 있는 방법이 생긴다.)

32) 옵션버튼과 체크박스

옵션버튼의 조작은 개체명.Value = True (On인 상태) ☞ (
한가지만 선택할 수 있다.)
체크박스의 조작은 개체명.Value = True (On인 상태) ☞ (선택/취소를 할 수 있으며 다중 선택이 가능.)

33) Do문의 처리방법

Do While 조건식
(True인 경우에 반복한다.)      Do Until 조건식(False인 경우에 반복한다.)
반복처리하는 문장                                       반복처리하는 문장
Loop                                                         Loop

34) 코드부문에서 중간 탈출방법

비교문장의 중간에 Sub를 탈출하려면 ☞ (
Exit Sub)
For - Next 문장중간에 탈출하려면 ☞ (
Exit For)

35) 창의 상태 취득

폼의개체명.WindowsState = 0(보통상태),1(창의 최소화),2(창의 최대화)
(
프로그램 실행시 항상 창이 화면에 가득차게 하려면 WindowState에서 2를 선택한다.)

36) 도형툴과 라인툴

툴의 shape ☞ 도형을 그리는 툴
(
shape속성에서 사각형,정사각형, 타원,원 ..등을 선택하여 나타낼 수 있다.)
툴의 Line ☞ 직선을 그리는 경우
(
X1,X2,Y1,Y2 등의 속성을 이용하여 길이와 각도를 나타낼 수 있다.)

37) 컨트롤의 위치 정확히 맞추기

좌표의 의미 Left(왼쪽끝의 위치) Top(윗쪽끝의 위치) Width(폭) Height(높이)
(
위와 같은 속성을 잘 이용하여 컨트롤들의 위치와 크기를 프로그램에서 조정할 수 있다.

38) 길이가 변하는 박스 만들기

shpScale.Width  =  shpBox.Width/60 * Second(Time) ☞ 두박스를 같은 위치를 배치해야 함
(길이가 변하는 박스)(길이가 고정된 박스)  
(
고정된박스의 60분의 1만큼에 현재초를곱하여 길이가 변하는 박스의 크기를 만듬)

39) 프로그램에서 칼라 부여

QBColor(숫자 0-15) ☞ (
0(검정) , 1(청색) , 2(녹색) , 3(하늘색) , 4(빨간색) , 5(검빨강) , 6(노란색) 7(흰색) , 8(회색) 등
RGB(빨,녹,청) ☞ (
RGB(0,0,0) 검정 RGB(255,0,0) 빨강 RGB(0,255,0) 녹색 RGB(0,0,255) 청색)

40) 폼에 배경을 부여

폼의 배후에 화상을 첨부하려면 속성창의 Picture를 클릭한다.
(
폼의 속성 중 Picture속성에서 그림을 선택하면 폼의 배경이 된다.)

★ 비주얼 베이직 기초강의 제5탄(41-50) ★

41) 폼에 인쇄하는 법

폼에 문자를 표시 Print "해당문자" ☞ form1.show를 먼저 기술하고 Print문 기술
(
Current X와 Current Y의 속성을 사용하면 문자의 표시위치 좌표)
Form1.PrintForm 폼의 타이틀바는 표시되지 않지만 그것 이외의 것은 모두 인쇄된다.
(문자를 단독으로 인쇄하려면 Printer.Print txtMemo.Text     Printer.EndDoc(마지막행에 추가))

42) 파일의 입출력

Open 파일명 For Input As #파일번호 ☞ (
파일을 연다음(파일을 읽어들임))
Input #파일번호, 변수명 ☞ (
이것을 변수에 저장)
Close # 파일번호 ☞ (
파일을 종료)
Open 파일명 For Output(Append) As #파일번호 ☞ (
파일을 연다음(데이터를 입력하여 저장))
Write #파일번호, 데이터1,데이터2,... ☞ (
이것을 입력한 것을 저장)
Close # 파일번호 ☞ (
파일을 종료 (Append는 추가저장))

43) 드라이브와 파일의 연동

드라이브의 연동 ☞ (
Dir1.Path = Drive1.Drive)
파일의 연동 ☞ (
File1.Path = Dir1.Path)
파일리스트박스에  Pattern="*.txt"로 지정하면 텍스트파일만 표시하게 됨

44) 파일의 반복처리

Do Until EOF(1)은 파일의 끝에 도달하기까지 Do에서 Loop까지 사이의 기술되어 있는 처리를 반복
(
디스크 등에 있는 파일을 읽어드릴 때 사용한다.)

45) 리스트박스와 콤보박스의 데이터 입력

리스트박스나 콤보박스에 데이터를 넣으려면 List속성의 버튼을 클릭하여 리스트를 표시하여 입력한후  Ctrl키를 누르면서 Enter키를 누르면 다음으로 삽입포인터가 이동하여 계속입력가능
(
프로그램에서 입력하려면 개체명.AddItem = "자료명")
(
개체명.ListIndex = 5 라고 기술하면 프로그램이 처음 실행될 때 초기 설정위치를 지정할 수 있다.)

46) Msgbox에 관하여

변수명 = MsgBox(메세지,표시버튼+표시아이콘,타이틀)
표시버튼(안에 수치로 표현해도 됨) ☞ (
vbOkOnly(0) = 확인버튼    vbOkCancel(1) = 확인,취소버튼   vbAbortRetryIgnore(2) = 확인,재시도,무시버튼   vbYesNoCancel(3) = 예,아니오,취소버튼   vbYesNo(4) = 예,아니오버튼      vbRetryCancel(5) = 재시도,취소버튼)
표시아이콘(안에 수치로 표현해도 됨) ☞ (
vbCritical(16) = 경고마크     vbQuestion(32) = ? 마크
vbExclamation(48) = ! 마크       vbInformation(64) = i 마크

예) Selectkey = MsgBox("저장합니까?", vbYesNoCancel + vbQuestion, "종료")
   Select Case Selectkey
         Case  vbYes
               [예(Y)] 버튼을 클릭할 때의 처리
         Case  vbNo
               [아니오(N)] 버튼을 클릭할 때의 처리
         Case vbCancel
               [최소] 버튼을 클릭할 때의 처리
   End Select
(
변수에 저장되는 값 vbOk(1) vbCancel(2) vbAbort(3) vbRetry(4) vbIgnore(5) vbYes(6) vbNo(7))

47) IF문과 For - Next문의 다른 곳

IF IsNumeric(TextBox.Text) Then ☞ (
식을 숫자로 다룰 때 True, 그렇지 않을 때 False로 된다.)
For Each - Next 명령문 ☞ (
배열의 모든 요소에 대하여 동일한 명령문을 실행한다.)
구문 : For Each <요소> In <배열>
명령문블록
Next

48) 문자열 함수

RIGHT(P$,2) ☞ (
P$의 오른쪽부터 세어서 2문자를 뽑아냅니다.)
LEFT(P$,7) ☞ (
P$의 왼쪽부터 세어서 7문자를 뽑아냅니다.)
MID(P$,6,2) ☞ (
P$의 왼쪽부터 세어서 6문자째부터 2문자를 뽑아냅니다.)
LEN(P$) ☞ (
P$의 문자수를 나타냅니다.)
InStr(<검색시작위치>,<검색대상문자>,<검색문자>)
(<검색대장문자>속에 <검색문자>가 포함되어 있는지 아닌지를 조사하여 포함되어 있으면 그 위치를 숫자로 포함되어 있지 않으면 0을 갖는다.)
UCase$(문자열) ☞ (
지정된 문자열중 영어문자를 모두 대문자로 하는 함수이며 LCase$는 지정된 문자열중 영어문자를 모두 소문자로 하는 함수입니다.)

49) Picture속성 이용하기

Picture 속성에 문자열을 대입하는 것은 불가능하지만, 그림을 대입할 수는 있다.
(
예) Image2.Picture = Image1.Picture)
Picture 속성에 그림파일을 읽어 드리는 방법
(
Image1.Picture = LoadPicture("Sample.bmp")
공용대화상자에 있는 그림파일을 읽어드릴려면 pic캔버스.PaintPicture LoadPicture(공용대화상자이름.filename) ☞ (
그림을 캔버스로 로드시킨다.)
SavePicture  <Picture 개체>,<파일명> ☞ (
LoadPicture의 역에 해당하는 명령)
LoadPicture() ☞ (
그림을 삭제할 수 있다.)

50) 파일저장시 덮어쓰기 경고
파일저장시 덮어쓰기 경고 ☞ (
공용대화상자이름.Flags = cdlOFNOverwritePrompt)

★ 비주얼 베이직 기초강의 제 6탄(51-60) ★

51) 파일이나 그림 로드시 Path설정

App.Path 속성 ☞ (
통합환경에서 프로젝트가 들어있는 디렉토리를,컴파일 실행시에는 exe파일이 들어있는 디렉토리를 전환한다.)

52) 이미지 속성에 관하여

Stretch 속성(이미지 컨트롤) ☞ (
이미지 컨트롤의 크기에 맞추어 그림의 확대/축소 여부를 지정한다.   기본은 False로 컨트롤의 크기가 그림 크기에 맞추어 변경되며 True면 그림의 크기가 컨트롤 크기에 맞추어 변경된다.)

53) 데이터베이스에 데이터 저장시 공백제거 기능

Trim ☞ (
양쪽의 공백을 제거하는 기능 (RTrim(오른쪽 공백제거)과 LTrim(왼쪽 공백)이 있다.))

54) 스크롤바 속성

SmallChange 속성(스크롤바) ☞ (
양 끝의 화살표를 클릭할 때의 이동량을 설정)  
LargeChange 속성(스크롤바) ☞ (
일부분을 클릭할 때의 이동량을 설정)

55) 포커스 명령

SetFocus ☞ (
포커스를 갖게 한다. 예) Text2.SetFocus)
GotFocus/Lost Focus ☞ (
개체가 포커스를 얻을때/개체가 포커스를 잃었을 때 발생)

56) 메뉴편집기의 메뉴구분

도구의 메뉴편집기에서 풀다운 메뉴를 작성 메뉴의 Caption을 -로 하면 메뉴 구분

57) 날짜 함수

WeekDay(<식>) ☞ (
시리얼 값에 해당하는 요일을 얻는다. 1은 일요일,7은 토요일에 대응한다.)
Now() ☞ (
현재의 날짜와 시각을 시리얼값으로 취득한다. 날짜형의 데이터는 #10/24/99#형태로 한다.)

58) 폼의 표시방법

폼.Show <표시모드> ☞ (
표시모드를 모달로 표시한 경우에는 Show 메서드의 다음 문은 폼이 닫혀진 뒤에 실행되고 모델리스로 표시하는 경우에는 Show 메스드의 다음 문은 폼이 표시된 직후에 실행됩니다.  vbModeless(0):폼을 모델리스로  vbModal(1):폼을 모달로 표시 생략시 0(모델리스)으로 된다.)
Hide 메서드(폼) ☞ (
폼을 비표시로 한다. 예) form1.Hide)
Unload 스테이트먼트 ☞ (
폼을 메모리에서 제거(언로드)한다. 예) Unload form1)

59) 텍스트박스와 기타속성

ScrollBar 속성(텍스트박스) ☞ (
스크롤바의 종류를 지정(0:없음,1:수직,2:수평,3:수직과 수평 스크롤바))
Change 이벤트(텍스트박스) ☞ (
텍스트바의 Text속성이 키입력 또는 코드의 대입문등에 의해 변경되었을때에 발생)
SelLength 속성(텍스트박스) ☞ (선택되어 있는 텍스트의 문자수를 설정한다.)
Clipboard.SetText 메서드(클립보드) ☞ (
클립보드에 <텍스트>로 지정된 문자열을 저장한다.) Clipboard.SetData 메서드(클립보드) ☞ (클립보드에 <픽쳐>로 지정된 픽쳐을 저장한다.)
Visible 속성 ☞ (
컨트롤의 표시/비표시를 설정합니다. True/False)

60) 에러 처리에 관한 구문

1구문:On Error Goto <레이블> ☞ (
<레이블>로 지정된 레이블에서 시작되는 에러처리루틴을 유효하게 하므로써 에러 발생시 에러처리 루틴에 있는 문장으로 이동)
2구문:On Error Resume Next   ☞ (에러를 무시하고 다음 스테이트먼트의 실행을 계속하도록 한다.)
3구문:On Error Goto 0 ☞ 에러처리를 무효화한다.
Clear 메서드(Err 개체) ☞ (
Err 개체의 모든 속성을 삭제(청소)한다.)
Number 속성(Err 개체) ☞ (
발생한 에러의 에러 번호를 나타낸다.)
Description 속성(Err 개체) ☞ (
발생한 에러의 에러 메시지를 나타낸다.)

★ 비주얼 베이직 기초강의 제7탄(61-67) ★

61) MCI 컨트롤에 관하여

프로젝트의 구성요소의 Microsort Multimedia Control 6.0을 선택하면 MCI 컨트롤이 추가된다.
Device Type 속성(MCI 컨트롤) ☞
(디바이스의 형태를 결정한다. 종류에는  AVI Video, CdAudio, Sequencer, WaveAudio 등이 있다 )
FileName 속성(MCI컨트롤) ☞ (
처리대상이 되는 파일을 지정한다.)
Command 속성(MCI 컨트롤) ☞ (
MCI 컨트롤을 실행한다. 예) MMControl1.Command = "Open"
Open,Close,Play,Pause,Stop,Back,Step,Prev,Next,Record 등이 있다
.)
MMControl1.hWndDisplay = Picture1.hWnd ☞ (
디바이스가 이용하는 창을 취득/설정한다.)

62) 난수 발생 함수

Rnd()함수 ☞ (
난수를 발생한다.(0-1사이의 값) 예) k=int(rnd*6)+1로 주사위 놀이게임시 설정된 값을 1에서 6사이로 제한하여 사용한다.)
Randomize 스테이트먼트 ☞ (
난수발생을 초기화함)

63) 마우스와 키보드 관련 이벤트

MouseDown(마우스버튼을 누를 때 발생) MouseUp(마우스버튼을 놓을 때 발생) MouseMove(마우스가  이동할 때 발생 ☞ (버튼값이 1이면 왼쪽버튼, 2이면 오른쪽버튼,4이면 중앙버튼)
KeyDown(키를 누를때에 발생) KeyUp(키를 놓을때에 발생) KeyPress(키에 대응되는 문자가 텍스트박스에 세트되기 전에 발생)

64) KeyCode와 그의 값

vbKeyBack(Backspace키) vbKeyCapital(Caps Lock키) vbKeyDelete(Delete키) vbKeyEnd(End키)  vbKeyF1(F1키) vbKeyInsert(Ins키) vbKeyNumlock(Numlock키) vbKeyPrint(Print Screen키)  vbKeyRight(→키) vbKeyShift(Shift키) vbKeyCancel(Cancel키) vbKeyControl(Ctrl키)  
vbKeyDown(↓키)  vbKeyEscape(Esc키) vbKeyHome(Home키) vbKeyLeft(←키)
vbKeyPause(Pause키) vbKeyReturn(Enter키) vbKeyUp(↑키)

65) 커먼 다이얼로그 속성

DialogTitle 속성(커먼 다이얼로그) ☞ (
대화상자의 타이틀 바에 표시할 문자열을 설정한다.)
DefaultExt 속성(커먼 다이얼로그) ☞ (
대화상자의 디폴트의 확장자를 설정한다.)
FIlter 속성(커먼 다이얼로그) ☞ (
[파일의 종류] 리스트박스에 표시하는 문자열을 설정한다.)
(
예) "텍스트파일(*.Txt)|*.Txt|도큐먼트파일(*.Doc)|*.Doc|모든파일(*.*)|*.*")
ShowOpen 메서드(커먼 다이얼로그) ☞ (
파일열기 대화상자를 표시한다.)
ShowSave 메서드(커먼 다이얼로그) ☞ (
다른이름으로저장 대화상자를 표시한다.)
FileName 속성(커먼 다이얼로그) ☞ (
대화상자로 지정된 파일명을 얻는다.)
CancelError 속성(커먼 다이얼로그) ☞ (
대화상자에서 Cancel 버튼을 선택하였을 때 에러를 발생시킬것인지 아닌지를 설정한다. True(에러를 발생한다.) False(에러를 발생시키지 않는다.)
ShowColor 메서드,ShowFont 메서드(커먼 다이얼로그) ☞ (
색 대화상자와 글꼴대화상자를 표시한다.)

66) 그리드 컨트롤

프로젝트의 구성요소의 Microsoft FlexGrid Control 6.0이 그리드 컨트롤을 사용하게 해준다.
Cols() 속성, Rows() 속성(플렉스 그리드) ☞ (
Cols속성은 그리드의 열수를 Rows속성은 행수를 지정)
FixedCols() 속성, FixedRows() 속성 ☞ (
FixedCols속성은 그리드의 고정열의 열 수를 FixedRows속성은 그리드의 고정행의 행 수를 지정한다.)
ScrollBars()속성(그리드) ☞ (
플렉스 그리드에 스크롤 바를 나타나게 할지 어떨지를 설정한다.) (flexScrollNone(0:없음) flexScrollHorizental(1:수평) flexScrollVertical(2:수직) flexScrollBoth(3:양쪽))
CellAlignment 속성(그리드) ☞ (
액티브 셀의 데이터의 표시 위치를 설정한다.)

67) 윈도우 기동명령

AppActivate 스테이트먼트 ☞ (
지정한 윈도우를 활성화한다. 예) AppActivate "계산기")
SendKeys 스테이트먼트 ☞ (
활성화 윈도에 키 데이터를 송신한다. 예) SendKeys "{DOWN 3}")
Shell(<프로그램>,<기동모드>)함수 ☞ (
<프로그램>으로 지정된 프로그램을 <기동모드>로 지정된 상태로 기동한다. 예) X = Shell("NotePad.exe",1))
기동모드 ☞ vbNormalFocus(1) : 포커스를 갖고, 창 크기와 위치에 표시되는 창
                 vbMinimizedFocus(2) : 포커스를 갖고, 최소(아이콘화) 표시된 창
                 vbMaximizedFocus(3) : 포커스를 갖고, 최대 표시되는 창

'Programming > Visual Basic' 카테고리의 다른 글

비주얼베이직 중급 강의  (0) 2007.04.26
웹 인증서 그리고 암호화 (사용하기)  (0) 2007.03.08
INI 파일 이용하기  (0) 2006.10.20
배열을 이용하여 리스트박스 채우기  (0) 2006.10.20
VB :: 배열  (0) 2006.10.19