반응형
Windows Forms에서 메뉴를 추가하려면 MenuStrip
컨트롤을 사용합니다. MenuStrip
은 Windows Forms 응용 프로그램에서 상단 메뉴를 구현하는 기본적인 방법입니다. 다음은 메뉴를 추가하는 방법과 주요 단계입니다.
1. Visual Studio에서 메뉴 추가
- MenuStrip 추가
- Visual Studio의 도구 상자에서 MenuStrip을 선택하고 폼에 드래그 앤 드롭합니다.
MenuStrip
컨트롤이 폼 상단에 추가되고, 메뉴 항목을 구성할 수 있는 디자인 영역이 표시됩니다.
- 메뉴 항목 추가
MenuStrip
위에 "File", "Edit", "Help"와 같은 항목을 입력합니다.- 항목을 클릭하면 하위 메뉴를 추가할 수 있는 공간이 나타나며, 여기서 하위 메뉴(예: "Open", "Save", "Exit")를 추가합니다.
- 이벤트 핸들러 연결
- 각 메뉴 항목을 선택하고 속성 창에서 Click 이벤트를 두 번 클릭하면 이벤트 핸들러가 생성됩니다.
- 생성된 핸들러에서 메뉴 항목 클릭 시 실행할 동작을 구현합니다.
2. C# 코드로 메뉴 추가
디자인 없이 코드로 메뉴를 추가하려면 다음과 같이 작성합니다.
using System;
using System.Windows.Forms;
public class MainForm : Form
{
public MainForm()
{
// MenuStrip 생성
MenuStrip menuStrip = new MenuStrip();
// "File" 메뉴 항목 생성
ToolStripMenuItem fileMenu = new ToolStripMenuItem("File");
// "File" 메뉴의 하위 항목 생성
ToolStripMenuItem openItem = new ToolStripMenuItem("Open");
ToolStripMenuItem saveItem = new ToolStripMenuItem("Save");
ToolStripMenuItem exitItem = new ToolStripMenuItem("Exit");
// 이벤트 핸들러 연결
openItem.Click += (sender, e) => MessageBox.Show("Open clicked");
saveItem.Click += (sender, e) => MessageBox.Show("Save clicked");
exitItem.Click += (sender, e) => Application.Exit();
// 하위 항목을 "File" 메뉴에 추가
fileMenu.DropDownItems.Add(openItem);
fileMenu.DropDownItems.Add(saveItem);
fileMenu.DropDownItems.Add(new ToolStripSeparator()); // 구분선 추가
fileMenu.DropDownItems.Add(exitItem);
// "File" 메뉴를 MenuStrip에 추가
menuStrip.Items.Add(fileMenu);
// MenuStrip을 폼에 추가
this.MainMenuStrip = menuStrip;
this.Controls.Add(menuStrip);
// 폼 설정
this.Text = "Menu Example";
this.StartPosition = FormStartPosition.CenterScreen;
this.Size = new System.Drawing.Size(400, 300);
}
[STAThread]
public static void Main()
{
Application.EnableVisualStyles();
Application.Run(new MainForm());
}
}
3. 주요 구성 요소 설명
- MenuStrip: 메뉴를 담는 컨테이너.
- ToolStripMenuItem: 개별 메뉴 항목.
- DropDownItems: 하위 메뉴 항목 컬렉션.
- ToolStripSeparator: 메뉴 내 구분선.
4. 추가 기능 구현
- 단축키 추가
ToolStripMenuItem.ShortcutKeys
속성을 설정하여 단축키를 정의합니다.
openItem.ShortcutKeys = Keys.Control | Keys.O;
- 이미지 추가
ToolStripMenuItem.Image
속성을 설정하여 메뉴 항목에 이미지를 추가합니다.
openItem.Image = Image.FromFile("path_to_icon.png");
- 동적 메뉴 생성
- 메뉴 항목을 동적으로 생성하여 특정 조건에서 메뉴 구성을 변경할 수 있습니다.
for (int i = 1; i <= 5; i++)
{
ToolStripMenuItem dynamicItem = new ToolStripMenuItem($"Item {i}");
dynamicItem.Click += (sender, e) => MessageBox.Show($"{dynamicItem.Text} clicked");
fileMenu.DropDownItems.Add(dynamicItem);
}
이 방식으로 Windows Forms에서 메뉴를 손쉽게 구성하고 동작을 구현할 수 있습니다. GUI를 디자인하거나, 코드로 직접 메뉴를 생성하는 방법 중 선택하여 사용할 수 있습니다.
반응형
'Windows > WindowsForm' 카테고리의 다른 글
[ Windows Form ] 문자 형태의 날짜를 DateTime으로 변환 하기 (0) | 2025.01.19 |
---|---|
[ WindowsForm ] ActiveX 를 WindowsForm에서 사용하기 (0) | 2024.12.16 |