Presentation is loading. Please wait.

Presentation is loading. Please wait.

6 장 윈도우 폼 응용프로그램 6.1 윈도우 폼 6.2 윈도우 폼 컨트롤 6.3 메뉴 6.4 도구 모음과 상태 표시줄

Similar presentations


Presentation on theme: "6 장 윈도우 폼 응용프로그램 6.1 윈도우 폼 6.2 윈도우 폼 컨트롤 6.3 메뉴 6.4 도구 모음과 상태 표시줄"— Presentation transcript:

1 6 장 윈도우 폼 응용프로그램 6.1 윈도우 폼 6.2 윈도우 폼 컨트롤 6.3 메뉴 6.4 도구 모음과 상태 표시줄

2 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 7) ListBox 컨트롤( )
항목에 대한 목록을 리스트 형태로 보여주고, 사용자가 특정 항목을 선택할 수 있도록 하는 컨트롤이다.

3 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 ListBox 컨트롤의 주요 속성 속성 내 용 Sorted
내 용 Sorted 리스트 내용을 정렬한다. Items 컨트롤안에 들어갈 항목들을 입력할 컬렉션이다. SelectedIndex 리스트 내용 항목 중에서 선택된 항목에 대한 인덱스 정수값을 반환한다.  -1 : 선택되지 않은 경우, 0 : 첫 번째 항목이 선택된 경우 SelectedItem 선택된 항목을 반환한다. MultiColumn 디폴트인 False는 하나의 컬럼만이 사용되므로 수직 스크롤 바가 생길 수 있다. True는 수평, 수직 스크롤 바가 생길 수 있다. SelectionMode 한번에 선택할 수 있는 항목의 개수를 결정한다. 종류에는 None, One, Multisimple, MultiExtended가 있다.  ScrollAlwaysVisible True이면 항목의 개수에 관계없이 수평, 수직 스크롤 바가 나타난다.

4 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 Items 속성은 ListBox 컨트롤에 들어가는 항목들에 대한 컬렉션이다.
이 Items 컬렉션에 대한 항목들의 추가나 삭제 등을 프로그램 코드로 관리하기 위하여 Add, Insert, Remove, RemoveAt, ClearItems 메소 드를 제공한다.

5 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 ListBox 컨트롤의 목록 중에서 선택된 항목은 SelectedIndex 속성과 SelectedItem 속성에 상태를 저장한다. SelectedIndex : 선택된 항목에 대한 인덱스 정수 값이 저장(첫번째 항목 에 대한 인덱스 값은 0이며, 순서에 따라 1씩 증가) 된다. SelectedItem : 선택된 항목의 값이 저장된다. SelectMode 속성값 One : 하나의 항목 선택(디폴트) None : 항목 선택 불가 MultiSimple : 마우스 버튼이나 스페이스 바를 눌러서 여러 개의 항목을 선택 가능 MultiExtended : Shift키를 누른 상태로 마우스를 누르거나, 화살표 방향키를 눌러서 여러 항목들을 동시에 선택 가능

6 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 ListBox 컨트롤이 제공하는 메소드 메소드 내 용 Items 컬렉션 관계
내 용 Items 컬렉션 관계 Add 매개변수로 전달되는 항목을 Items 컬렉션에 추가한다. Insert 매개변수로 전달되는 항목을 Items 컬렉션의 특정위치에 삽입한다. Remove 매개변수로 전달되는 항목을 Items 컬렉션에서 삭제한다. RemoveAt 매개변수로 전달되는 인덱스에 해당되는 항목을 Items 컬렉션에서 삭제한다. ClearItems Items 컬렉션에 있는 모든 항목을 삭제한다. ClearSelected Items 컬렉션에 있는 모든 항목에 대하여 선택을 취소한다. FindString 지정된 문자열로 시작하는 항목을 찾아 해당 인덱스를 반환한다. GetSelected 지정된 인덱스의 항목의 선택유무를 반환한다. SetSelected 항목에 대한 인덱스와 True/False 값을 매개변수로 전달한다.

7 예제 프로그램 : ListBox 예제 프로그램(ListBox2)
윈도우 폼 응용 프로그램 예제 프로그램 : ListBox 예제 프로그램(ListBox2) 텍스트 박스에 입력한 부서명을 [추가] 버튼을 사용하여 리스트 박스에 추가한다. 리스트 박스에서 선택한 부서명을 [삭제] 버튼을 사용하여 삭제한다. 1. 폼을 설계한다.

8 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다.
객체의 종류 객체 명 속성 및 설정 값 Form1 Text : 부서명 관리 레이블 Label1 Text : 부서 : 텍스트박스 TextBox1 (Name) : txtDept ImeMode : HangulFull 리스트박스 ListBox1 (Name) : lstName 명령 버튼 Button1 (Name) : btnAdd Text : 추가 Button2 (Name) : btnDelete Text : 삭제 Button3 (Name) : btnEnd Text : 종료 텍스트박스 컨트롤의 ImeMode 속성을 HangulFull로 설정하여 한글입력이 가능하게 하였다.

9 윈도우 폼 응용 프로그램 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load lstName.Items.Add("영업부") '목록에 Add 메소드로 항목 추가 lstName.Items.Add("인사부") lstName.Items.Add("관리부") End Sub Private Sub btnAdd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnAdd.Click If txtDept.Text <> "" Then '입력한 내용이 있는 경우에 목록에 추가 lstName.Items.Add(txtDept.Text) End If

10 윈도우 폼 응용 프로그램 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click If lstName.SelectedIndex <> -1 Then lstName.Items.RemoveAt(lstName.SelectedIndex) End If End Sub Private Sub btnEnd_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnEnd.Click End End Class

11 윈도우 폼 응용 프로그램 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “ListBox2”로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

12 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 8) ComboBox 컨트롤( )
위쪽부분 : 텍스트 상자로서 목록의 항목 중 일부 또는 모두를 입 력할 수 있다. 아래쪽 부분 : 목록상자로서 항목의 목록이 표시된다. SelectedIndex 속성과 SelectedItem속성은 ListBox 속성과 동일하다. Items.Count 속성은 목록의 항목 개수를 나타낸다. Items 속성은 ListBox 컨트롤과 같이 항목을 목록에 추가한다. 항목을 추가, 삭제하기 위한 메소드로 Add, Insert, Remove 메서드를 사용한다.

13 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 8) ComboBox 컨트롤( )
3가지 유형의 사용자 인터페이스를 제공한다.(DropDownStyle 속성 에 의해서 결정) 드롭다운 콤보(DropDown), 단순 콤보(Simple) : 입력란에 항목을 직접 입력할 수 있고, 드롭다운 리스트 목록에서 원하는 항목을 선택할 수 있다. 드롭다운 리스트 콤보(DropDownList) : 입력란을 제공하지 않으며, 드롭다운 리스트 목록에서 원하는 항목을 선택만 할 수 있다

14 예제 프로그램 : ComboBox 예제 프로그램(ComboBox2)
윈도우 폼 응용 프로그램 예제 프로그램 : ComboBox 예제 프로그램(ComboBox2) ComboBox 컨트롤을 사용하여 1월, 2월, 3월, 4월 중에서 한 개만 선택하여 저금액과 상금을 텍스트 박스에 출력하는 프로그램 작성 저금액과 상금(저금액의 주어진 비율)의 비율의 처리 조건 1월 저금액 : 1,300,000원, 상금 = 0.1, 2월 저금액 : 2,200,000원, 상금 = 0.15 3월 저금액 : 3,600,000원, 상금 = 0.18, 4월 저금액 : 2,100,000원, 상금 = 0.16 1. 폼을 설계한다.

15 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다.
객체의 종류 객체 명 속성 및 설정 값 Form1 Text : 월별 상금 조회 콤보 박스 ComboBox1 (Name) : comMonth 명령 버튼 Button1 (Name) : btnRun Text : 조회 텍스트박스 TextBox1 (Name) : txtResult MultiLine : True 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '목록에 Add 메소드로 항목 추가 comMonth.Items.Add("1월") comMonth.Items.Add("2월") comMonth.Items.Add("3월") comMonth.Items.Add("4월") End Sub

16 윈도우 폼 응용 프로그램 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Private Sub btnRun_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRun.Click Select Case comMonth.SelectedIndex Case 0 '1월 상금액 계산( * 0.1) txtResult.Text = "1월 저금액 : " & vbCrLf & "상금 : " & * 0.1 Case 1 '2월 상금액 계산( * 0.15) txtResult.Text = "2월 저금액 : " & vbCrLf & "상금 : " & * 0.15 Case 2 '3월 상금액 계산( * 0.18) txtResult.Text = "3월 저금액 : " & vbCrLf & "상금 : " & * 0.18 Case 3 '4월 상금액 계산( * 0.16) txtResult.Text = "4월 저금액 : " & vbCrLf & "상금 : " & * 0.16 End Select End Sub End Class

17 윈도우 폼 응용 프로그램 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “ComboBox2”로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

18 9) CheckedListBox 컨트롤( )
윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 9) CheckedListBox 컨트롤( ) CheckedListBox 컨트롤은 ListBox 컨트롤의 확장 형태로서 목록 상 자 왼쪽에 확인란이 나타난다. 리스트 목록에서 Items 컬렉션에 대한 항목들을 Add, Insert, Remove, RemoveAt, ClearItems 메소드를 제공하여 추가하거나 삭제하는 것은 ListBox 컨트롤과 동일하다. 그러나, 왼쪽의 확인란(체크 박스) 항목을 구하기 위하여 CheckedIndices 속성을 사용하는 것이 다르다.

19 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 CheckedListBox 컨트롤의 주요 속성 속성 내 용
내 용 CheckedItems 확인란에 체크된 항목들의 컬렉션이다.  CheckOnClick - 디폴트인 False는 항목을 두 번 클릭해야 확인란에 체크마크가 표시된다. - True는 한번의 클릭으로 확인란에 체크마크가 표시된다  CheckedIndices 확인란에 체크된 항목에 대한 인덱스의 컬렉션 정보를 반환한다.  ItegralHeigh 리스트 목록에 완성된 항목만 포함할 것인지의 여부를 나타낸다.(True/False) ThreeDCheckBoxes 디폴트는 False이며, True일 경우에는 체크 박스의 모양이 3D 형태로 변한다.

20 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 CheckedListBox 컨트롤의 주요 메소드 메소드 내 용
내 용 GetItemCheckState 항목의 인덱스가 매개변수로 전달된다. 전달된 인덱스에 해당하는 CheckState 열거형 값이 반환된다.  GetItemChecked 항목의 인덱스가 매개변수로 전달된다. 전달된 인덱스의 항목에 체크가 되었는지를 블리언값으로 반환한다. (True/False) 항목의 인덱스와 CheckState 열거형 값이 매개변수로 전달된다. 전달된 매개변수 해당 항목에 대한 상태를 설정한다.  항목의 인덱스와 블리언 값이 매개변수로 전달된다. False는 체크표시가 해제되고 True이면 해당 항목을 체크 표시되게 한다.

21 예제 프로그램 : CheckedListBox의 예제 프로그램(CheckedListBox)
윈도우 폼 응용 프로그램 예제 프로그램 : CheckedListBox의 예제 프로그램(CheckedListBox) CheckedListBox 컨트롤을 사용하여 수강과목들을 표시하고, 표시된 과목들 중 선택된 과목들을 레이블 컨트롤에 표시하는 프로그램 1. 폼을 설계한다.

22 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명 속성 및 설정 값 폼 Form1
Text : 수강신청 과목 선택 및 출력 체크 리스트 박스 CheckedListBox1 (Name) : clstList Items : 데이터베이스 자료구조 수치해석 컴퓨터구조 소프트웨어공학 자바프로그래밍 이산수학 운영체제 명령 버튼 Button1 (Name) : btnList Text : 수강신청과목은? 레이블 Label1 (Name) : lblResult BorderStyle : FixedSingle AutoSize : False Text :

23 윈도우 폼 응용 프로그램 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Public Class Form1 Private Sub btnList_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnList.Click Dim i As Integer lblResult.Text = " " '과목을 신청하지 않은 경우 If clstList.CheckedIndices.Count = 0 Then lblResult.Text = "신청과목을 체크하세요!" Else '체크된 항목을 찾아서 항목을 출력 For i = 0 To clstList.CheckedIndices.Count - 1 lblResult.Text &= clstList.Items(clstList.CheckedIndices.Item(i)) & ControlChars.CrLf Next i End If End Sub End Class

24 윈도우 폼 응용 프로그램 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “CheckedListBox”로, 위치를 “C:\VB 예제\chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된 다.

25 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 10) ImageList 컨트롤( )
단독으로 사용되지 않고, 다른 컨트롤인 ListView, TreeView, ToolBar 등과 함께 사용하며, 실행시에 화면에 나타나지 않는다. 이미지를 사용하는 각 컨트롤들은 이미지를 효율적으로 관리하기 위하여 ImageList 컨트롤을 속성값으로 받아들여 ImageList 속성을 가지고 있다. 디자인 시에 Image 컬렉션에 이미지 객체를 추가하는 방법 (1) 도구상자에서 ImageList 컨트롤을 선택하여 폼에 추가한다. 이때 ImageList 컨트롤은 폼 편집기 창의 분리바 하단에 ImageList 로 추가된다.

26 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 (2) 속성 창에서 Image 속성의 오른쪽에 있는 생략표(…)를 눌러 Image 컬렉션 편집기 대화상자를 로드한다. (3) 멤버 칸에 있는 추가 버튼을 클릭하여, 열기 대화상자에서 필요한 이미지 파일을 선택한 후에 열기 버튼을 클릭한다. (4) 이미지 파일을 추가하는 것을 마칠 때까지 (3)번을 반목하고, [확인] 버튼을 클릭한다.

27 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 11) ScrollBar 컨트롤( , )
Scrollbars 컨트롤은 한정된 영역의 화면에서 더 많은 내용을 보기 위 하여 사용한다. 현재 진행 상태나 사운드의 크기를 나타낼 때에도 사용하며, 수직방향을 다루는 VSscroolBar 컨트롤과 수평방향을 다루는 HScroolBar 컨트롤이 있다. 수직 스크롤바 스크롤바 박스 스크롤바 화살표 버튼 수평 스크롤바

28 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 Scrollbars 컨트롤의 주요 속성 속성 내 용 Value
내 용 Value 현재 스크롤바 박스(썸, thumb)의 위치값이다. Minimum Value 속성의 최소값을 의미하며, 기본값은 0이다 Maximum Value 속성의 최대값을 의미하며, 기본값은 100이다 LargeChange 스크롤 바를 이동하거나 <PageUP>키나 <Pagrdown>키 등의 방향키를 눌렀을 때 이동되는 거리를 나타낸다. 기본값은 10으로 설정되어 있다. SmallChange 스크롤 바를 이동하거나 <PageUP>키나 <Pagrdown>키 등의 방향키를 눌렀을 때 이동되는 거리를 나타낸다. 기본값은 1로 설정되어 있다.

29 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 Scrollbars 컨트롤의 주요 이벤트 이벤트 내 용 Scoll
내 용 Scoll 스크롤 바가 이동 중에 발생하는 이벤트이다. Change 스크롤 바가 이동이 끝난 뒤에 발생하는 이벤트이다. Valuechanged 프로그램에서나 스크롤 이벤트에서 Value 값을 바꿀 때 발생하는 이벤트이다. GetItemCheckState 항목의 인덱스와 CheckState 열거형 값이 매개변수로 전달된다. 전달된 매개변수 해당 항목에 대한 상태를 설정한다.  GetItemChecked 항목의 인덱스와 블리언 값이 매개변수로 전달된다. False는 체크표시가 해제되고, True이면 해당 항목을 체크 표시되게 한다.

30 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 12) PictureBox 컨트롤( )
PictureBox 컨트롤은 아이콘이나 비트맵 이미지(Meta File, Jpeg, Gif 등)의 그림 파일과 문자등을 나타내며, 다른 컨트롤들을 배치할 수 있다. 표시되는 그림은 Image 속성으로 지정하며, 런타임이나 디자인 타임에서 설정할 수 있다. SizeMode 속성은 이미지와 컨트롤의 크기가 서로 일치하도록 조정한다. PictureBox 컨트롤의 주요 속성 속성 내 용 BackgroundImage 그림 상자에 배경 이미지를 설정하게 해준다. 이 이미지의 맨 위에 텍스트를 추가할 수도 있습니다. BorderStyle 이미지 테두리 형태를 나타내며, 속성 값은 None, FixedSingle, Fixed3D 옵션이 있다. Image 표시할 이미지를 설정한다. 열기 대화상자에서 원하는 이미지 파일을 선택한다.  SizeMode 그림이 표시되는 방법을 제어하며, 속성값은 Normal, StretchImage, AutoSize 및 CenterImage이다. 

31 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 SizeMode 속성 값
Normal은 이미지가 PictureBox 컨트롤의 좌측 상단에서부터 채워지며, 이미지가 큰 경우에는 잘려나간다.  StretchImage는 이미지가 PictureBox 컨트롤이 크기에 따라 확대되거나 축소. AutoSize는 이미지의 크기에 맞추어 PictureBox 컨트롤의 크기가 자동으로 조절. CenterImage는 이미지를 PictureBox 컨트롤의 중앙에 위치시킨다. 만약에 이미지의 크기가 더 크다면 남는 부분은 잘려나간다.    다음 그림은 SizeMode 속성을 CenterImage로 설정하였다. 불러온 그림 이미지(System.Drawing.Bitmap)의 크기가 PictureBox 컨트롤의 중앙에 위치하고, 남는 부분은 잘려나갔다.

32 예제 프로그램 : PictureBox 컨트롤 예제 프로그램(PictureBox)
윈도우 폼 응용 프로그램 예제 프로그램 : PictureBox 컨트롤 예제 프로그램(PictureBox) PictureBox 컨트롤의 Bitmap() 메소드를 이용하여 이미지를 표시하고, 특정 이미지를 삭제하는 프로그램 작성 1. 폼을 설계한다.

33 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다.
SizeMode 속성를 StretchImage로 설정하면 PictureBox 크기에 그림 크기가 맞춰지도록 자동 조절된다. 객체의 종류 객체 명 속성 및 설정 값 Form1 Text : PictureBox 사용 예제 픽처 박스 PictureBox1 SizeMode : StretchImage 그룹 박스 GroupBox1 Text : 그림 선택 라디오 버튼 RadioButton1 Text : 1번 그림 RadioButton2 Text : 2번 그림 RadioButton3 Text : 3번 그림 명령 버튼 Buttion1 Text : 그림 보기 Button2 Text : 그림 삭제

34 윈도우 폼 응용 프로그램 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Public Class Form1 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If (RadioButton1.Checked = True) Then PictureBox1.Image = New Bitmap(" E:\VB2010(실습예제)\chapter06 \Desert.jpg") ElseIf (RadioButton2.Checked = True) Then PictureBox1.Image = New Bitmap(" E:\VB2010(실습예제)\chapter06\Penguins.jpg") ElseIf (RadioButton3.Checked = True) Then PictureBox1.Image = New Bitmap(" E:\VB2010(실습예제)\chapter06\lighthouse.jpg") End If End Sub Private Sub Button2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button2.Click PictureBox1.Image = Nothing End Class

35 윈도우 폼 응용 프로그램 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다. 그림을 선택하고, [그림보기] 버튼을 클릭한다.
메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “PictureBox”로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

36 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 13) WebBrowser 컨트롤( )
WebBrowser ActiveX 컨트롤에 대한 관리되는 래퍼를 제공한다. 관리되는 래퍼를 사용하면 Windows Forms 클라이언트 응용 프로그램에 웹 페이지를 표시할 수 있다. WebBrowser 컨트롤을 사용하면 응용 프로그램에서 Internet Explorer 웹 검색 기능을 복제하거나, 기본 Internet Explorer 기능을 해제한 다음 해당 컨트롤을 단순한 HTML 문서 뷰어로 사용할 수 있다. WebBrowser 컨트롤에는 Internet Explorer에 있는 컨트롤을 구현하는데 사용할 수 있는 다양한 속성, 메소드 및 이벤트가 포함되어 있다.

37 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 WebBrowser 컨트롤의 주요 속성 속성 내 용 Document
내 용 Document 현재 웹 페이지의 HTML DOM(문서 개체 모델)에 대하여 관리되는 액세스를 제공하는 개체를 가져온다. DocumentText 현재 웹 페이지의 HTML 콘텐츠를 가져오거나 설정한다. DocumentTitle 현재 웹 페이지의 제목을 가져온다. ObjectForScripting 웹 페이지 스크립팅 코드에서 응용 프로그램과 통신하는 데 사용할 수 있는 개체를 가져오거나 설정 Url 현재 웹 페이지의 URL을 가져오거나 설정한다. 이 속성을 설정하면 컨트롤이 새 URL로 이동된다.

38 윈도우 폼 응용 프로그램 6.2 윈도우 폼 컨트롤 WebBrowser 컨트롤의 주요 메소드
내 용 GoBack 기록의 이전 페이지를 탐색한다. GoForward 기록의 다음 페이지를 탐색한다. Navigate 지정한 URL을 탐색한다. Print 현재 웹 페이지를 인쇄한다. Refresh 현재 웹 페이지를 다시 로드한다. Stop 현재 탐색을 중단하고 소리와 애니메이션 등의 동적 페이지 요소를 중지한다. WebBrowser 컨트롤의 주요 이벤트 이벤트 내 용 DocumentCompleted 웹 페이지 로드가 완료되면 발생한다. Navigating 작업을 취소할 수 있도록 탐색이 시작되기 전에 발생한다.

39 예제 프로그램 : WebBrowser 예제 프로그램(WebBrowser)
윈도우 폼 응용 프로그램 예제 프로그램 : WebBrowser 예제 프로그램(WebBrowser) 텍스트 박스에 웹 주소를 입력하여 WebBrowser 컨트롤에 입력된 웹사이트를 표시하는 프로그램 작성 1. 폼을 설계한다.

40 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명 속성 및 설정 값 폼 Form1
Text : 웹 브라우저 텍스트 박스 TextBox1 (Name) : txtUrl Dock : Top 웹 브라우저 WebBrowser1 (Name) : WebView Dock : Fill

41 윈도우 폼 응용 프로그램 3. 코드 창을 열고, txtUrl_KeyPress() 이벤트 서브 프로시저를 작성한다.
txtUrl_KeyPress() 프로시저는 텍스트 박스에 웹 주소를 입력하고, 엔터키를 치면 WebBrowser 컨트롤에 웹사이트를 표시하는 작업을 수행한다. Public Class Form1 Private Sub txtUrl_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtUrl.KeyPress '입력 폼에 문자열이 입력되고 엔터값이 입력되면 If Me.txtUrl.Text <> "" And e.KeyChar = Chr(13) Then 'WebBrowser 컨트롤의 Navigate() 메소드를 이용하여 입력된 웹 주소로 웹 사이트를 출력 Me.webView.Navigate(Me.txtUrl.Text) End If End Sub End Class

42 윈도우 폼 응용 프로그램 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
텍스트 박스에 웹 주소를 입력하고, 엔터키를 치면 웹 브라우저가 출력된다. 5. 프로젝트를 저장한다. 메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “WebBrowser”로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

43 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) 메뉴는 여러 종류의 명령어들을 주제별로 묶어서 선택하는 기능이다.
작성한 프로그램에 메뉴를 넣게 되면 기능적인 측면에서 편리하게 사용할 수 있다. 사용자가 많은 기능들을 표현해야 하는 프로그램일수록 메뉴가 있으면 더욱 편리하게 사용할 수가 있다. (1) 메뉴의 구성요소 메뉴 표시줄 대화상자표시 구분선 서브메뉴 표시 생략표 서브 메뉴 메뉴 항목

44 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) 메뉴 인터페이스 : 메뉴를 디자인할 때 사용하는 편리한 장식 종류 기능 설명
서브메뉴 표시(▶) 서브메뉴가 나타난다. 생략표(...) 대화상자가 나타난다. 단축키(Shortcut Key) 메뉴 항목을 선택하지 않고서도 메뉴 명령을 바로 실행 할 수 있게 해주는 기능. 해당 메뉴항목에 대응되는 키입력 조합으로 작성하며, 기능키(function key), Ctrl 키, Shift 키와 다른 문자와의 조합이 가능. 액세스키(Access Key) 메뉴 항목 이름의 밑줄처진 키를 눌러서 선택하는 키이다. Alt 키를 사용하여 선택 메뉴 타이틀 실행(!) 해당 메뉴 타이틀을 실행할 때 직접 명령을 실행한다는 것을 나타낸다. 선택 옵션(̌) (Check Mark) 사용자로 하여금 켜거나 꺼야 하는 상태를 알려줄 때 사용. 항목 이름 앞에 체크마크가 붙은 경우에는 이미 선택되어 있는 옵션을 의미 라디오체크(RadioCheck) 메뉴항목에 체크 표시가 라디오 표시로 바뀐다. 회색 메뉴 항목 사용자가 메뉴 항목을 선택할 수 없음을 나타낸다. Enabled 속성을 False로 설정할 시에 나타난다.

45 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) 메뉴 인터페이스 선택 옵션 단축키 회색 메뉴 항목 액세스키 라디오체크

46 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) (2) MenuStrip 컨트롤( )
1) 도구상자 창에서 MenuStrip 컨트롤을 선택하여 폼 위에 배치한다.이때, MenuStrip 컨트롤은 폼 편집기 창의 구분선 밑에 추가된다. 

47 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) 2) 폼에 “여기에 입력”라는 문구에 만들고 싶은 메뉴 항목의 이름을 직접 입력한다. 메뉴 항목 이름을 입력하는 다른 방법은 입력하고자 하는 항목을 선택한 후에 속성 창에 있는 Text 속성에 입력해도 된다. 3) 위의 순서 1), 2)를 반복 진행한다. 메뉴 작성 중에 메뉴의 순서를 바꾸는 경우에는 해당 메뉴를 클릭한 채 원하는 위치로 끌어오면 된다. 메뉴의 삭제는 항목을 선택한 후 마우스 우측 버튼을 클릭하여 나온 단축메뉴에서 삭제를 선택하고, 중간에 새로운 메뉴 추가시 에는 새로 삽입을 선택한다.

48 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) MenuStrip 컨트롤에 필요한 속성과 메소드
내 용 Name 컨트롤 이름을 설정한다. RightToLeft 메뉴표시줄 메뉴 항목의 표시방향을 설정한다. · No : 메뉴 항목들이 폼의 왼쪽에서 오른쪽으로 표시된다.  · Yes : 메뉴 항목들이 폼의 오른쪽에서 왼쪽으로 표시된다.   · Inherit : 부모 컨트롤에 지정된 방향에 따라 결정된다. 메소드 내 용 GetForm Menu 속성에 MenuStrip 컨트롤이 설정된 폼을 리턴한다.  CloneMenu 현재의 MenuStrip 컨트롤과 동일한 컨트롤을 생성한다. MenuStrip 컨트롤은 Menu 컨트롤 객체의 컬렉션이다. 따라서, 메뉴 항 목들은 모두 Menu 컨트롤의 객체가 된다.

49 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) MenuItem 컨트롤에 필요한 속성 속성 내 용 Enabled
내 용 Enabled 메뉴 항목을 활성화(디폴트 True) 혹은 비활성화(False) 상태로 만든다. True일 때 해당 메뉴를 선택할 수 있다. Visible 메뉴 항목을 메뉴에서 보이지 않게 하는 속성이다. 디폴트인 True일 때 보인다. Checked 해당 메뉴항목 왼쪽에 선택 옵션(체크 마크, √)이 나타난다. 디폴트는 False이며, True일 때 나타난다. RadioCheck 메뉴항목에 선택 옵션이 라디오 표시로 바뀐다. 디폴트는False이며, 이 속성을 사용하기 위해서는 Checked 속성이 True로 설정되어 있어야 한다. ShortCut 단축키의 값을 가지는 속성이다. ShowShortCut 디폴트인 True는 설정된 단축키를 메뉴 항목에 나타낸다. MdiList True : MDI 자식창의 목록을 나타내는 메뉴를 생성한다.

50 윈도우 폼 응용 프로그램 6.3 메뉴(Menu) MenuItem 컨트롤에 필요한 메소드, 이벤트 메소드 내 용
내 용 MergeMenu 메뉴를 병합한다. CloneMenu 현재의 항목과 동일한 항목을 복제한다. PerformClick 선택한 항목에 Click 이벤트를 발생시킨다. PerformSelect 선택한 항목에 Select 이벤트를 발생시킨다. 이벤트 내 용 Click 사용자가 해당 메뉴항목을 선택하였을 때 이벤트가 발생한다. Pupup 서브 메뉴를 포함하고 있는 메뉴항목을 선택하였을 때 이벤트가 발생한다.  Select 사용자가 메뉴 항목에 커서를 갖다 놓았을 때 이벤트가 발생한다.

51 예제 프로그램 : Menu 작성 예제 프로그램(MainMenu2)
윈도우 폼 응용 프로그램 예제 프로그램 : Menu 작성 예제 프로그램(MainMenu2) 주어진 메뉴 항목들을 작성하고, 특정 메뉴를 선택하면 레이블 컨트롤에 선택된 메뉴 항목의 메시지가 출력되게 하는 프로그램 작성 1. 폼을 설계한다.

52 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명 속성 및 설정 값 폼 Form1
Text : 메인 메뉴 레이블 Label1 (Name) : lblResult BorderStyle : Fixed3D SutoSize : False Text : 메뉴 스트립 MenuStrip1 (Name) : MenuStrip1

53 윈도우 폼 응용 프로그램 3. 메뉴를 작성한다. ① ‘파일’ 에 속한 메뉴를 작성한다.
구분선은 Text 항목에 ‘-’를 입력한다. 메인 메뉴 객체의 종류 속성 및 설정 값 파일 (Name) : mnuFile Text : 파일(&F) 열기 (Name) : mnuOpen Text : 열기(&O) ShortcutKeys : Ctrl + F1 저장 (Name) : mnuSave Text : 저장(&S) ShortcutKeys : Ctrl + F2 -(구분선) Text : - 인쇄 (Name) : mnuPrint Text : 인쇄(&P) ShortcutKeys : Ctrl + F3 종료 (Name) : mnuExit Text : 종료(&X) ShortcutKeys : Ctrl + F4

54 윈도우 폼 응용 프로그램 3. 메뉴를 작성한다. ② ‘편집’에 속한 메뉴를 작성한다. 메인 메뉴 객체의 종류 속성 및 설정 값
(Name) : mnuEdit Text : 편집(&E) 잘라내기 (Name) : mnuCut Text : 잘라내기(&C) ShortcutKeys : Ctrl + F5 복사 (Name) : mnuCopy Text : 복사(&C) ShortcutKeys : Ctrl + F6 붙여넣기 (Name) : mnuPaste Text : 붙여넣기(&P) ShortcutKeys : Ctrl + F7

55 윈도우 폼 응용 프로그램 3. 메뉴를 작성한다. ③ ‘보기’에 속한 메뉴를 작성한다. 메인 메뉴 객체의 종류 속성 및 설정 값
(Name) : mnuView Text : 보기(&V) 코드 (Name) : mnuCode Text : 코드(&C) ShortcutKeys : Ctrl + F8 열기 (Name) : mnuCOpen Text : 열기(&D) ShortcutKeys : Ctrl + F9 -(구분선) Text : - 속성 창 (Name) : mnuWin Text : 속성창(&W) ShortcutKeys : Ctrl + F10

56 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1
Private Sub mnuOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuOpen.Click lblResult.Text = "파일->열기 메뉴 항목을 선택" End Sub Private Sub mnuSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuSave.Click lblResult.Text = "파일->저장 메뉴 항목을 선택" Private Sub mnuExit_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuExit.Click End

57 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Private Sub mnuCut_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuCut.Click lblResult.Text = "편집->잘라내기 메뉴 항목을 선택" End Sub Private Sub mnuCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuCopy.Click lblResult.Text = "편집->복사 메뉴 항목을 선택" Private Sub mnuPaste_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuPaste.Click lblResult.Text = "편집->붙여넣기 메뉴 항목을 선택" Private Sub mnuPrint_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuPrint.Click lblResult.Text = "파일->인쇄 메뉴 항목을 선택"

58 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Private Sub mnuCode_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuCode.Click lblResult.Text = "보기->코드 메뉴 항목을 선택" End Sub Private Sub mnuCOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuCOpen.Click lblResult.Text = "보기->열기 메뉴 항목을 선택" Private Sub mnuWin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuWin.Click lblResult.Text = "보기->속성창 항목을 선택" End Class

59 윈도우 폼 응용 프로그램 5. 프로그램을 실행한다. 6. 프로젝트를 저장한다.
메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “MainMenu2”로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

60 예제 프로그램 : Menu 작성 예제 프로그램(MainMenu)
윈도우 폼 응용 프로그램 예제 프로그램 : Menu 작성 예제 프로그램(MainMenu) 주어진 메뉴 항목들을 작성하고, 특정 메뉴를 선택하면 레이블 컨트롤에 선택된 메뉴 항목의 메시지가 출력되게 하는 프로그램 작성 1. 폼을 설계한다.

61 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명 속성 및 설정 값 폼 Form1
Text : 메인 작성 실습 예제 레이블 Label1 Text : 메뉴이름 출력 : Font : 크기 12 Label2 (Name) : lblResult BorderStyle : Fixed3D SutoSize : False TextAlign : MiddleCenter Text : 메뉴 스트립 MenuStrip1 (Name) : MenuStrip1

62 윈도우 폼 응용 프로그램 3. 메뉴를 작성한다. ① ‘파일’ 에 속한 메뉴를 작성한다.
구분선은 Text 항목에 ‘-’를 입력한다. 메인 메뉴 객체의 종류 속성 및 설정 값 파일 (Name) : mnuFile Text : 파일(&F) 새파일 (Name) : mnuNew Text : 새파일(&N) 파일열기 (Name) : mnuOpen Text : 파일열기(&O) 저장하기 (Name) : mnuSave Text : 저장하기(&S) -(구분선) Text : - 인쇄 (Name) : mnuPrint Text : 인쇄(&P) 종료 (Name) : mnuExit Text : 종료(&X)

63 윈도우 폼 응용 프로그램 3. 메뉴를 작성한다. ② ‘편집’에 속한 메뉴를 작성한다. 메인 메뉴 객체의 종류 속성 및 설정 값
(Name) : mnuEdit Text : 편집(&E) 실행취소 (Name) : mnuCancel Text : 실행취소 되돌리기 (Name) : mnuReturn Text : 되돌리기 -(구분선) Text : - 복사 (Name) : mnuCopy Text : 복사(&C) 붙여넣기 (Name) : mnuPaste Text : 붙여넣기(&T) 잘라내기 (Name) : mnuCut Text : 잘라내기

64 윈도우 폼 응용 프로그램 3. 메뉴를 작성한다. ③ ‘글꼴’에 속한 메뉴를 작성한다. 메인 메뉴 객체의 종류 속성 및 설정 값
(Name) : mnuFont Text : 글꼴(&F) 스타일 mnuStyle Text : 스타일 굵게 (Name) : mnuBold Text : 굵게(&B) 기울림꼴 (Name) : mnuItalic Text : 기울림꼴(&I) 크기 mnuSize Text : 크기(&S) 크게 (Name) : mnuLarge Text : 크게(&L) 작게 (Name) : mnuISmall Text : 작게(&S)

65 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1
Private Sub mnuNew_Click(sender As Object, e As EventArgs) Handles mnuNew.Click lblResult.Text = "새파일 메뉴 선택" End Sub Private Sub mnuOpen_Click(sender As Object, e As EventArgs) Handles mnuOpen.Click lblResult.Text = "파일열기 메뉴 선택" Private Sub mnuSave_Click(sender As Object, e As EventArgs) Handles mnuSave.Click lblResult.Text = "파일저장 메뉴 선택" Private Sub mnuPrint_Click(sender As Object, e As EventArgs) Handles mnuPrint.Click lblResult.Text = "인쇄 메뉴 선택"

66 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Private Sub mnuExit_Click(sender As Object, e As EventArgs) Handles mnuExit.Click lblResult.Text = "종료 메뉴 선택" End Sub Private Sub mnuCancel_Click(sender As Object, e As EventArgs) Handles mnuCancel.Click lblResult.Text = "실행취소 메뉴 선택" Private Sub mnuReturn_Click(sender As Object, e As EventArgs) Handles mnuReturn.Click lblResult.Text = "되돌리기 메뉴 선택" Private Sub mnuCopy_Click(sender As Object, e As EventArgs) Handles mnuCopy.Click lblResult.Text = "복사 메뉴 선택"

67 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Private Sub mnuPaste_Click(sender As Object, e As EventArgs) Handles mnuPaste.Click lblResult.Text = "붙여넣기 메뉴 선택" End Sub Private Sub mnuCut_Click(sender As Object, e As EventArgs) Handles mnuCut.Click lblResult.Text = "잘라내기 메뉴 선택" Private Sub mnuBold_Click(sender As Object, e As EventArgs) Handles mnuBold.Click lblResult.Text = "굵게 메뉴 선택" Private Sub mnuItalic_Click(sender As Object, e As EventArgs) Handles mnuItalic.Click lblResult.Text = "기울림꼴 메뉴 선택"

68 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
Private Sub mnuLarge_Click(sender As Object, e As EventArgs) Handles mnuLarge.Click lblResult.Text = "크게 메뉴 선택" End Sub Private Sub mnuSmall_Click(sender As Object, e As EventArgs) Handles mnuSmall.Click lblResult.Text = "작게 메뉴 선택" End Class

69 윈도우 폼 응용 프로그램 5. 프로그램을 실행한다. 6. 프로젝트를 저장한다.
메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “MainMenu”로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

70 (3) ContextMenuStrip 컨트롤( )
윈도우 폼 응용 프로그램 6.3 메뉴(Menu) (3) ContextMenuStrip 컨트롤( ) ContextMenuStrip 컨트롤은 특정 영역에서 마우스 우측 버튼을 클릭하 면 나타나는 팝업 메뉴를 생성하는 컨트롤이다. 이러한, 팝업 메뉴를 컨텍스트 메뉴라 하며, 폼에서 컨텍스트 메뉴를 추 가하는 방법은 MenuStrip 컨트롤과 동일하다. 컨텍스트 메뉴는 ContextMenuStrip 컨트롤에서 마우스 우측 버튼을 클 릭하여 단축 메뉴를 불러내고, 단축 메뉴에서 메뉴 편집을 선택하면 단 축 메뉴항목을 입력할 수 있다. 메뉴 작성 후에 폼의 ContextMenuStrip 속성에 ContextMenuStrip 컨트롤 이름을 설정한다.

71 예제 프로그램 : Context Menu 작성 예제 프로그램(ContextMenu)
윈도우 폼 응용 프로그램 예제 프로그램 : Context Menu 작성 예제 프로그램(ContextMenu) MainMenu 프로그램에 ContextMenuStip 컨트롤을 사용하여 컨텍스트 메뉴(파일 메뉴)를 추가하는 프로그램 작성 1. 폼을 설계한다.

72 윈도우 폼 응용 프로그램 2. 객체(폼, 컨트롤)의 속성값을 설정한다. 객체의 종류 객체 명 속성 및 설정 값 폼 Form1
Text : 컨텍스트 메뉴 작성 실습 예제 ContextMenuStrip : ctmStrip 레이블 Label1 Text : 메뉴이름 출력 : Font : 크기 12 Label2 (Name) : lblResult BorderStyle : Fixed3D SutoSize : False TextAlign : MiddleCenter Text : 메뉴 스트립 MenuStrip1 (Name) : MenuStrip1 컨텍스트 메뉴 스트립 ContextMenuStrip1 (Name) : ctmStrip

73 윈도우 폼 응용 프로그램 3. 메뉴를 작성한다. ① 컨텍스트 메뉴를 작성한다. 메인 메뉴 객체의 종류 속성 및 설정 값 파일
새파일 (Name) : ctmNew Text : 새파일(&N) 파일열기 (Name) : ctmOpen Text : 파일열기(&O) 저장하기 (Name) : ctmSave Text : 저장하기(&S) -(구분선) (Name) : ctmSeperator Text : - 인쇄 (Name) : ctmPrint Text : 인쇄(&P) 종료 (Name) : ctmExit Text : 종료(&X)

74 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다. Public Class Form1
Private Sub ctmNew_Click(sender As Object, e As EventArgs) Handles ctmNew.Click lblResult.Text = "새파일 메뉴 선택" End Sub Private Sub ctmOpen_Click(sender As Object, e As EventArgs) Handles ctmOpen.Click lblResult.Text = "파일열기 메뉴 선택" Private Sub ctmSave_Click(sender As Object, e As EventArgs) Handles ctmSave.Click lblResult.Text = "저장하기 메뉴 선택" Private Sub ctmPrint_Click(sender As Object, e As EventArgs) Handles ctmPrint.Click lblResult.Text = "인쇄 메뉴 선택" Private Sub ctmExit_Click(sender As Object, e As EventArgs) Handles ctmExit.Click lblResult.Text = "종료 메뉴 선택" End Class

75 윈도우 폼 응용 프로그램 5. 프로그램을 실행한다. 6. 프로젝트를 저장한다.
메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “ContextMenu”로, 위치를 “C:\VB예 제\chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

76 윈도우 폼 응용 프로그램 6.4 도구 모음과 상태 표시줄 (1) 도구 모음(ToolStrip)( ) 도구 모음
자주 사용하는 메뉴 항목들을 이미지 형태의 버튼으로 구성 상태 표시줄 응용 프로그램의 현재상태나 작업 정보를 폼의 하단에 표시한다. 이러한 기능들을 Visual Basic.NET에서는 컨트롤로 제공한다. (1) 도구 모음(ToolStrip)( ) 도구 모음은 응용 프로그램 메뉴에서 가장 많이 사용하는 명령들을 사 용자가 쉽게 사용하도록 이미지 형태의 버튼으로 제공하는 컨트롤이다. 도구 모음은 버튼 기능, 단추메뉴, 툴팁 등을 제공한다. ToolStrip 컨트롤로 구현하며, ToolStrip 컨트롤에 버튼과 이미지의 추가는 ToolStrip 컨트롤의 Items 속성에서 지정한다.

77 ToolStrip 컨트롤을 폼에 추가하고, 버튼을 설정하는 방법
윈도우 폼 응용 프로그램 6.4 도구 모음과 상태 표시줄 ToolStrip 컨트롤을 폼에 추가하고, 버튼을 설정하는 방법 (1) 도구상자 창에서 ToolStrip컨트롤을 선택하여 폼 위에 배치한다. 이때, ToolStrip컨트롤은 폼의 상단에 도킹된 상태로 추가된다.

78 윈도우 폼 응용 프로그램 6.4 도구 모음과 상태 표시줄
(2) ToolStrip 컨트롤의 Items 속성 오른쪽에 생략표시(...) 버튼을 눌러 ‘항목 컬렉션 편집기’ 대화상자를 표시한다. 항목에서 드롭다운 리스트 버튼을 눌러 필요한 컨트롤을 선택하고, [추가] 버튼을 클릭하고, ToolStrip 멤버 객체를 추가한다. 다음은 버튼 2개, 구분선, 드롭다운 버튼 멤버를 추가한 내용이다.

79 윈도우 폼 응용 프로그램 6.4 도구 모음과 상태 표시줄
(3) 도구상자 이미지와 설명을 추가하려면 ‘항목 컬렉션 편집기’ 대화상자에서 멤버를 선택하고, 속성 창에서 이미지는 Image 속성, 툴팁 설명은 Text속성에서 지정한다. (4) 위의 순서 (2),(3)을 반복하여 진행하면 간단한 도구모음을 만들 수 있다.

80 윈도우 폼 응용 프로그램 6.4 도구 모음과 상태 표시줄 ToolStripButton 객체에 대한 주요 속성 속성 내 용
내 용 Image 버튼에 할당된 이미지를 지정한다. DisplayStyle 도구모음내의 버튼들의 유형을 결정한다. 종류는 None, Text, Image, ImageAndText 가 있다. ToolTipText 도구모음 버튼의 툴팁으로 나타나는 문자열을 나타낸다. DropDownItems 드롭다운버튼(▼) 멤버에 대한 속성이며, 드롭다운 목록에 들어갈 멤버를 추가한다.

81 예제 프로그램 : ToolStrip 작성 예제 프로그램(ToolStrip)
윈도우 폼 응용 프로그램 예제 프로그램 : ToolStrip 작성 예제 프로그램(ToolStrip) MainMenu2를 작성한 후, 도구 모음(ToolStrip 컨트롤)을 추가한다. 1. 폼을 설계한다.

82 윈도우 폼 응용 프로그램 2. 저장 도구 모음에 드롭다운 메뉴를 추가하기 위하여 컨텍스트 메뉴를 추가한다. ContextMenuStrip 컨트롤을 폼에 배치하고, 다음과 같이 단축 메뉴(저장, 다른 이름으로 저장)를 작성한다.

83 윈도우 폼 응용 프로그램 3. ToolStrip 컨트롤을 활성화하고, ToolStrip 컨트롤의 Items 속성 우측 생략 표시(…) 버튼을 눌러 ‘항목 컬렉션 편집기‘ 대화상자를 표시한다. 항목에서 드롭다운 리스트 버튼을 눌러 필요한 컨트롤을 선택하여 [추가] 버튼을 눌러서 ToolStrip 멤버 객체를 추가한다.

84 윈도우 폼 응용 프로그램 ToolStrip 멤버 객체에 대한 속성을 다음과 같이 설정한다. 객체 멤버 속성 및 설정 값
버튼 (Name) : tlbButton1 Text : 열기 Image : ToolTipText : 열기 1 (Name) : tlbButton2 Text : 저장 ToolTipText : 저장 구분선 2 (Name) : Seperator 3 (Name) : tlbButton3 Text : 잘라내기 ToolTipText : 잘라내기 4 (Name) : tlbButton4 Text : 복사 ToolTipText : 복사 5 (Name) : tlbButton5 Text : 붙여넣기 ToolTipText : 붙여넣기

85 윈도우 폼 응용 프로그램 4. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
사용자가 특정 메뉴 항목을 선택하였을 때 그 항목에는 ItemClicked 이벤트가 발생한다. 그러나 개별적인 버튼에 대한 이벤트가 생성되지 않고, 도구 모음에 대한 하나의 이벤트 핸들러가 생성되며, ToolStripItemClickedEventArgs 형 매개변수를 통하여 버튼을 구별한다. 도구 모음을 더블 클릭하면 자동으로 ItemClicked 이벤트 핸들러가 생성되며, 필요한 코드를 작성한다. Public Class Form1 Private Sub mnuOpen_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnuWin.Click lblResult.Text = "열기 메뉴를 선택" End Sub Private Sub ToolStrip1_ItemClicked(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ToolStripItemClickedEventArgs) '메시지 박스를 사용할 경우 'MsgBox(e.Button.ToString()) '해당되는 도구모음의 툴 팁을 출력 'lblResult.Text = e.Button.ToolTipText '해당되는 도구모음의 속성 정보를 출력 lblResult.Text = e.ClickedItem.ToString() End Class

86 윈도우 폼 응용 프로그램 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
도구 모음에서 특정 버튼을 선택하면 다음과 같은 결과가 출력된다. 5. 프로젝트를 저장한다. 메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “ToolStrip”으로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.

87 (2) 상태 표시줄(ToolStrip)( )
윈도우 폼 응용 프로그램 6.4 도구 모음과 상태 표시줄 (2) 상태 표시줄(ToolStrip)( ) 상태 표시줄은 응용 프로그램의 하단에 위치하여 프로그램의 현재상 태를 나타내는 정보를 표시한다. 현재 입력키의 상태나 시간 등을 알려주는 역할 여러개의 창 또는 상태 표시줄에 나타나는 각각의 영역인 패널(panel)로 나뉘어진다. 키보드의 상태는 Caps Lock, Num Lock, Scroll Lock같은 작은 창으로  나타낸다. StatusStrip 컨트롤은 응용 프로그램의 하단에 상태 표시줄을 구현하는 컨트롤이다. StatusStrip 컨트롤의 Items 속성은 패널을 통해 상태 표시줄의 구역을 나누어서 표시 정보를 구분한다.

88 예제 프로그램 : StatusStrip 예제 프로그램(StatusStrip)
윈도우 폼 응용 프로그램 예제 프로그램 : StatusStrip 예제 프로그램(StatusStrip) Microsoft Visual Studio 메뉴에서 파일(F) -> 새 프로젝트(P)을 선택하여 Visual Studio 안에 있는 ‘새 프로젝트‘ 화면을 연다. ‘새 프로젝트’ 화면에서 좌측에 있는 ‘설치된 템플릿’의 항목에서 ‘Visual Basic’을 선택하고, 중간의 ‘템플릿’ 항목에서는 ‘Windows Forms 응용 프로그램’을 선택하여 [확인] 버튼을 클릭한다. 2. 다음과 같은 폼을 설계한다.

89 윈도우 폼 응용 프로그램 메인 메뉴인 ToolStrip 컨트롤에 도구 모음 추가 사항은 앞 단원에서와 같은 방법으로 작업한다.
객체 멤버 속성 및 설정 값 버튼 Text : 새파일 Image : DisplayStyle : ImageAndText 1 Text : 열기 2 Text : 저장 3 Text : 잘라내기 4 Text : 복사 5 Text : 붙여넣기

90 윈도우 폼 응용 프로그램 3. StatusStrip 컨트롤의 Items 컬렉션에 각각의 멤버 속성에 대한 속성값을 설정한다. 또한 시간을 상태 표시줄에 표시하기 위하여 Timer 컨트롤을 추가한다. StatusStrip 컨트롤을 활성화 하고, Items 속성에서 ‘항목 컬렉션 편집기’를 표시한다. 항목에서 StatusLabel 항목을 선택하고, [추가] 버튼을 눌러 같은 4개의 멤버를 추가한다. 객체의 종류 속성 및 설정 값 StatusStrip Name : sbsStatus Name : MsgPanel Text : 준비 BorderStyle : Flat 1 Name : InsPanel Text : BorderStyle : Sunken 2 Name : NumLockPanel 3 Name : TimePanel

91 윈도우 폼 응용 프로그램 3. 코드 창을 열고, 코드(이벤트 프로시저)를 작성한다.
① Form1 이벤트 서브 프로시저에 다음 코드를 작성한다. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load '초기상태가 삽입상태(Insert)로 시작 Me.InsPanel.Text = "삽입" End Sub ② ToolStrip 컨트롤을 클릭하였을 때 나타나는 Click 이벤트에 다음과 같은 코드를 작성한다. 특정 도구 모음 항목을 선택하였을 때 그 항목에는 Click 이벤트가 발생한다. Private Sub ToolStripButton1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton1.Click '마우스의 도구모음 중 새파일 선택 MsgPanel.Text = "새파일" End Sub Private Sub ToolStripButton2_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton2.Click '마우스의 도구모음 중 열기 선택 MsgPanel.Text = "열기"

92 윈도우 폼 응용 프로그램 Private Sub ToolStripButton3_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton3.Click '마우스의 도구모음 중 저장 선택 MsgPanel.Text = "저장" End Sub Private Sub ToolStripButton4_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton4.Click '마우스의 도구모음 중 잘라내기 선택 MsgPanel.Text = "잘라내기" Private Sub ToolStripButton5_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton5.Click '마우스의 도구모음 중 복사 선택 MsgPanel.Text = "복사" Private Sub ToolStripButton6_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripButton6.Click '마우스의 도구모음 중 붙여넣기 선택 MsgPanel.Text = "붙여넣기"

93 윈도우 폼 응용 프로그램 ③ Form1_keyUp 이벤트 서브 프로시저에 다음 코드를 작성한다.
Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp '키보드의 Insert 키 체크 If e.KeyCode = Keys.Insert Then If InsPanel.Text.Equals("삽입") Then InsPanel.Text = "수정" Else InsPanel.Text = "삽입" End If '키보드의 NumLock 키 체크 If e.KeyCode = Keys.NumLock Then If NumLockPanel.Text.Equals("Num") Then NumLockPanel.Text = " " NumLockPanel.Text = "Num" End Sub

94 윈도우 폼 응용 프로그램 ④ Timer 컨트롤을 더블 클릭하여 나타나는 Tick 이벤트에 다음과 같은 코드를 작성한다.
Timer 컨트롤을 사용하기 위해 Tick 이벤트를 추가하였다. Timer 컨트롤의 Enabled 속성을 True로 설정한다. Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick '타이머 작동 TimePanel.Text = Date.Now.ToLongTimeString() End Sub

95 윈도우 폼 응용 프로그램 4. 프로그램을 실행한다. 5. 프로젝트를 저장한다.
초기 실행 상태에서 잘라내기 버튼, Insert 키, Num Lock 키를 눌렀을 때 실행 화면이다. 5. 프로젝트를 저장한다. 메뉴에서 [파일] →[모두 저장(L)]을 선택하여 프로젝트를 저장한다. 프로젝트 저장 대화상자에서 이름을 “StatusStrip”으로, 위치를 “C:\VB예제 \chapter06”로 입력하고, [저장] 버튼을 클릭하면 프로젝트가 저장된다.


Download ppt "6 장 윈도우 폼 응용프로그램 6.1 윈도우 폼 6.2 윈도우 폼 컨트롤 6.3 메뉴 6.4 도구 모음과 상태 표시줄"

Similar presentations


Ads by Google