C#
2013.08.05 10:27

트레이 아이콘 만들기

조회 수 13283 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

http://blog.daum.net/starkcb/60

 

종료 혹은 최소화 버튼을 눌렷을 때 트레이 아이콘만들기~!

1.도구상자에서 NotifyIcon을 선택하여 Form에 추가 합니다. 추가 후 소성창의 Icon 속성에 준비해준 Ico 파일을 연결해 줍니다. 여기까지만 하고 실행시켜도 트레이에 우리 프로그램의 아이콘이 보이는 걸 볼 수 있습니다.


2. 트레이에서 마우스 오른쪽 버튼을 눌렀을 경우 나올 메뉴를 위해 ContextMenuStrip도 추가해 줍니다.



3. 아이콘 추가
Form에 NotifyIcon을 드레그 하여 추가한다.(시스템에 보여질 아이콘)

4. contextMenuStrip를 드레그 하여 추가한다.(트레이 아이콘의 오른쪽을 클릭하였을 때 보여질 메뉴스트립)
최대화(show)와 종료 버튼을 추가하였다.



5. 트레이 아이콘과 메뉴스트립 연결
폼이 초기에 로드될 때 연결이 되도록 설정하였다.
private void frmMain_Load(object sender, EventArgs e)
{
//트레이 아이콘과 컨텍스트메뉴 연결
Tray.ContextMenuStrip = contextMenuStrip1;
}
5. 종료 버튼을 눌렸을 때 최소화하기


이렇게 폼의 속성창에서 종료 이벤트를 추가하면 함수가 생성된다
private void frmMain_FormClosing(object sender, FormClosingEventArgs e)
{
e.Cancel = true;//이벤트 취소
//둘중 한개 쓰면 됨 이둘을 사용하여 최소화 하면 alt+tab 실행 시 출력이 되지 않음 Start->
this.Visible = false;
//this.Hide();
//둘중 한개 쓰면 됨 이둘을 사용하여 최소화 하면 alt+tab 실행 시 출력이 되지 않음 End<-

//alt+tab를 눌렸을 때 도 나타나게 하는 법 Start ->
// this.WindowState = FormWindowState.Minimized;// 최소화
// this.ShowInTaskbar = false; //화면 하단에 나타나는것 해제
//alt+tab를 눌렸을 때 도 나타나게 하는 법 End <-

}

6. 트레이 아이콘 클릭시 최대화 하기
private void Tray_DoubleClick(object sender, EventArgs e)
{
//둘중 한개 쓰면 됨 이둘을 사용하여 최소화 하면 alt+tab 실행 시 출력이 되지 않음 Start->
this.Visible = true;
//this.Show();
//둘중 한개 쓰면 됨 이둘을 사용하여 최소화 하면 alt+tab 실행 시 출력이 되지 않음 End<-

//alt+tab를 눌렸을 때 도 나타나게 하는 법 Start ->
//this.WindowState = FormWindowState.Maximized;// 최소화
//this.ShowInTaskbar = true; //화면 하단에 나타나는것 해제
//alt+tab를 눌렸을 때 도 나타나게 하는 법 End <-

}

그외 트레이 아이콘에 show버튼을 눌렸을 때 함수 처리는 5번과 동일하게 내부 함수 처리하면 되고 exit눌렸을 때는 this.Close();처리를 하여 종료처리를 해주면 된다.!!


Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
326 LINUX [Shell Script] Bash 파일 유무 체크하는 방법과 파일 존재 검사 옵션 2017.05.16 21497 0
325 LINUX [Shell Script] Bash 실행결과를 변수에 담기 2017.05.16 13600 0
324 Python [Sconscript] Install method 2014.05.29 8680 0
323 PHP [PHP] .php 확장자 없이 URL 접속하기 2020.10.26 4839 0
322 일반 [PDK] PDK에서 난수 발생 함수 2006.05.04 37033 0
321 PHP [MySQL] 뷰 생성하기(VIEW 생성하기) 2022.10.12 1230 0
320 JAVA [Java] 자바에서 콜백(Callback) 구현하기 2017.03.15 26257 0
319 JAVA [JAVA] 람다식 기본 예제 1 (map, filter, reduce, collect) 2022.11.04 1505 0
318 HTML5 [Javascript] Promise 이해하기 2018.01.04 5931 0
317 HTML5 [Javascript] Javascript Patterns 요약 secret 2018.01.16 0 0
316 일반 [HTML] 복사해서 사용가능한 5개의 실용적인 List Style 예제 2015.11.03 7271 0
315 Android [GIT] git stash 사용하기 2012.10.22 31388 0
314 Android [Git] git add 취소하기, git commit 취소하기, git push 취소하기 2021.09.30 5731 0
313 Android [GIT 사용법] 초보자가 알아두면 좋을 명령어 정리 1 2011.12.26 66788 0
312 Android [GIT 사용법] 다른 branch와의 차이점 찾아보기 2012.08.16 21941 0
목록
Board Pagination ‹ Prev 1 ... 8 9 10 11 12 13 14 15 16 17 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5