🔎 유용한 정보
1. 강의 개요
이번 강의에서는 Windows Forms에서 자주 사용되는 MenuStrip과 ToolStrip 컨트롤을 학습합니다.
- MenuStrip: 프로그램 상단에 메뉴를 구성하는 데 사용되며, 파일 메뉴, 설정, 도움말 등 기능을 제공.
- ToolStrip: 버튼, 텍스트박스, 드롭다운 등을 포함한 도구 모음을 생성하여 자주 사용하는 작업을 실행 가능.
2. 학습 목표
- MenuStrip과 ToolStrip의 주요 기능과 속성 이해.
- 메뉴 및 도구 모음을 구성하는 방법 학습.
- 이벤트 처리로 메뉴와 도구 모음 동작 연결.
3. MenuStrip (메뉴스트립)
MenuStrip이란?
MenuStrip은 애플리케이션의 상단에 메뉴를 배치할 수 있는 컨트롤입니다.
메뉴 항목은 계층적으로 구성되며, 사용자가 항목을 선택하면 특정 작업을 수행합니다.
주요 속성
속성 설명 예제
Items | 메뉴 항목 컬렉션을 관리 | menuStrip1.Items.Add("파일"); |
MdiWindowListItem | 다중 문서 인터페이스(MDI) 메뉴 표시 | menuStrip1.MdiWindowListItem = menuItemWindows; |
4. ToolStrip (툴스트립)
ToolStrip이란?
ToolStrip은 버튼, 드롭다운 메뉴, 텍스트박스 등으로 구성된 도구 모음을 제공합니다.
도구 모음은 사용자가 자주 사용하는 기능을 실행하도록 돕습니다.
주요 속성
속성 설명 예제
Items | ToolStrip 항목 컬렉션을 관리 | toolStrip1.Items.Add(new ToolStripButton("열기")); |
GripStyle | ToolStrip의 손잡이 표시 설정 | toolStrip1.GripStyle = ToolStripGripStyle.Hidden; |
5. 실습: MenuStrip과 ToolStrip 구성하기
요구사항
- MenuStrip을 사용해 "파일", "도움말" 메뉴를 생성.
- 파일: "열기", "저장", "종료".
- 도움말: "정보".
- ToolStrip을 사용해 "열기"와 "저장" 버튼을 추가.
- 각 메뉴와 버튼 클릭 시 메시지박스로 이벤트 확인.
폼 구성
컨트롤 타입 이름 텍스트 위치 크기
MenuStrip | menuStrip1 | (없음) | 상단 고정 | 자동 크기 |
ToolStrip | toolStrip1 | (없음) | MenuStrip 아래 | 자동 크기 |
ToolStripButton | btnOpen | "열기" | ToolStrip 내부 | (32x32) (아이콘 크기) |
ToolStripButton | btnSave | "저장" | ToolStrip 내부 | (32x32) (아이콘 크기) |
코드 작성
Form1.cs
using System;
using System.Windows.Forms;
namespace WindowsFormsApp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
InitializeMenuStrip();
InitializeToolStrip();
}
private void InitializeMenuStrip()
{
// 파일 메뉴
ToolStripMenuItem fileMenu = new ToolStripMenuItem("파일");
ToolStripMenuItem openItem = new ToolStripMenuItem("열기", null, OpenItem_Click);
ToolStripMenuItem saveItem = new ToolStripMenuItem("저장", null, SaveItem_Click);
ToolStripMenuItem exitItem = new ToolStripMenuItem("종료", null, ExitItem_Click);
fileMenu.DropDownItems.AddRange(new[] { openItem, saveItem, exitItem });
// 도움말 메뉴
ToolStripMenuItem helpMenu = new ToolStripMenuItem("도움말");
ToolStripMenuItem aboutItem = new ToolStripMenuItem("정보", null, AboutItem_Click);
helpMenu.DropDownItems.Add(aboutItem);
// MenuStrip 구성
menuStrip1.Items.AddRange(new[] { fileMenu, helpMenu });
this.MainMenuStrip = menuStrip1;
}
private void InitializeToolStrip()
{
// ToolStrip 버튼 추가
ToolStripButton btnOpen = new ToolStripButton("열기");
btnOpen.Click += OpenItem_Click;
ToolStripButton btnSave = new ToolStripButton("저장");
btnSave.Click += SaveItem_Click;
toolStrip1.Items.AddRange(new ToolStripItem[] { btnOpen, btnSave });
}
// 메뉴 및 버튼 이벤트 핸들러
private void OpenItem_Click(object sender, EventArgs e)
{
MessageBox.Show("파일을 열었습니다.", "열기");
}
private void SaveItem_Click(object sender, EventArgs e)
{
MessageBox.Show("파일을 저장했습니다.", "저장");
}
private void ExitItem_Click(object sender, EventArgs e)
{
Application.Exit();
}
private void AboutItem_Click(object sender, EventArgs e)
{
MessageBox.Show("이 프로그램은 Windows Forms 예제입니다.", "정보");
}
}
}
6. 실행 결과
- MenuStrip
- 상단에 "파일" 및 "도움말" 메뉴가 표시됩니다.
- "열기", "저장", "종료", "정보" 메뉴가 포함되어 있으며, 클릭 시 메시지박스로 이벤트가 발생합니다.
- ToolStrip
- "열기"와 "저장" 버튼이 추가됩니다.
- 버튼 클릭 시 동일한 이벤트가 처리됩니다.
7. 주요 개념 요약
- MenuStrip은 메뉴를 계층적으로 구성하여 사용자가 다양한 작업을 수행할 수 있도록 합니다.
- ToolStrip은 자주 사용하는 작업을 빠르게 실행할 수 있도록 도구 버튼을 제공합니다.
- 이벤트 핸들러를 활용해 메뉴 항목과 도구 버튼의 동작을 정의할 수 있습니다.
'📁 [4] 개발자 정보 & 코드 노트 > C#' 카테고리의 다른 글
C# Windows Forms 강의 9편: TabControl과 ProgressBar (0) | 2025.02.12 |
---|---|
C# Windows Forms 강의 8편: ContextMenuStrip과 NotifyIcon (0) | 2025.02.11 |
C# Windows Forms 강의 6편: TableLayoutPanel과 SplitContainer (0) | 2025.02.09 |
C# Windows Forms 강의 5편: Panel과 FlowLayoutPanel 컨트롤 (0) | 2025.02.08 |
C# Windows Forms 강의 4편: ComboBox와 ListBox (0) | 2025.02.07 |
🔎 유용한 정보