본문 바로가기
C#/C# WinForm

Tray Icon

by doublerabbits 2023. 7. 15.

● Form 에 NotifyIcon 추가

NotifyIcon

 notifyicon

Visible : False (프로그램 시작시 초기에는 트레이 아이콘이 표시되지 않도록 한다.)

Icon : 트레이 아이콘에 표시될 아이콘을 지정한다.

DoubleClick 이벤트 추가

 

 Form

FormClosing 이벤트 추가

Resize 이벤트 추가

 

void ToTray()
{
	this.Hide();
	this.ShowIcon = false;
	notifyIcon.Visible = true;
}

void ToDesktop()
{
	this.Show();
	this.BringToFront();
	this.ShowIcon = true;
	notifyIcon.Visible = false;
}

private void notifyIcon_DoubleClick(object sender, EventArgs e)
{
	ToDesktop();
}

private void MainForm_Resize(object sender, EventArgs e)
{
	if (this.WindowState == FormWindowState.Minimized)
	{
		ToTray();
	}
}

private void MainForm_FormClosing(object sender, FormClosingEventArgs e)
{
	if (e.CloseReason == CloseReason.UserClosing)
	{
		e.Cancel = true;
		ToTray();
	}
}