MessageBoxEx

Tech: /.NET·C# 2008. 8. 7. 18:10

Windows Forms 프로그램을 만들 때 종종 사용하는 것 중 메시지박스가 있는데

이 메시지박스(MessageBox.Show()...)의 특징은 다음과 같다.

 

1. 사용자가 "확인"이나 미리 정의된 기타 단추를 클릭할 때까지 닫히지 않고 계속 떠 있다.

2. 항상 화면 가운데 뜬다.

 

이것을 확장해서

 

1. 특정 시간 후 자동으로 닫히게 하고,

2. 창이 나타나는 위치를 화면 가운데 뿐만아니라 화면 왼쪽 하단, 오른쪽 하단, 부모창 가운데 등으로 나타날 수 있도록

 

기능을 추가한 클래스를 만들어봤다.

C#으로 만들었고, 누구나/어디서나 아무 프로젝트에서나 가져다 써도 된다.


MessageBoxEx.cs



첨부된 소스파일을 사용할 프로젝트에 추가해 넣고 using 걸어주거나 기존 프로젝트 네임스페이스로 수정하면 바로 사용 가능할 것이다.

 

코드프로젝트에 올라온 몇 가지 게시물 내용과 마이크로소프트 고객지원 게시판에 있는 관련 내용(아마 VB 6.0용?)을 참조해서 만들었다.

참조했던 원본 소스코드들의 출처는... 오래되어서 까먹었고, 다시 찾아보려니 못찾겠어서 생략.

 

[10초 후에 자동으로 닫히는 메시지박스 예제] 

 MessageBoxEx.Show("다음 파이어폭스 Add-on 기능이 설치되어 있지 않습니다.\r\n\r\n" +
     "- Modify Headers v0.6.4 버전 이상\r\n\r\n" +
     "Add-on을 설치하신 후에 정상 로그인됩니다.",
     "파이어폭스 오류",
     MessageBoxButtons.OK,
     MessageBoxIcon.Exclamation,
     10 * 1000);

 

[화면 오른쪽 하단에 출력되는 메시지박스 예제] 

 DialogResult dr = MessageBoxEx.Show("확인하지 않은 새 메시지가 있습니다. 확인하시겠습니까?",
     "새 메시지 도착",
     MessageBoxButtons.YesNo,
     MessageBoxIcon.Information,
     MessageBoxDefaultButton.Button2,
     50 * 1000,
     MessageBoxEx.Position.BottomRight);





Posted by 떼르미
,


자바스크립트를 허용해주세요!
Please Enable JavaScript![ Enable JavaScript ]