Windows Forms 프로그램을 만들 때 종종 사용하는 것 중 메시지박스가 있는데
이 메시지박스(MessageBox.Show()...)의 특징은 다음과 같다.
1. 사용자가 "확인"이나 미리 정의된 기타 단추를 클릭할 때까지 닫히지 않고 계속 떠 있다.
2. 항상 화면 가운데 뜬다.
이것을 확장해서
1. 특정 시간 후 자동으로 닫히게 하고,
2. 창이 나타나는 위치를 화면 가운데 뿐만아니라 화면 왼쪽 하단, 오른쪽 하단, 부모창 가운데 등으로 나타날 수 있도록
기능을 추가한 클래스를 만들어봤다.
C#으로 만들었고, 누구나/어디서나 아무 프로젝트에서나 가져다 써도 된다.
첨부된 소스파일을 사용할 프로젝트에 추가해 넣고 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);
'Tech: > .NET·C#' 카테고리의 다른 글
윈도 서비스 확장 클래스: ServiceInstallerEx (0) | 2008.08.14 |
---|---|
SNMP에 사용자 정의 값 쓰기 (0) | 2008.08.14 |
비 .NET(unmanaged) 에서 호출할 수 있도록 DLL 내보내기 (0) | 2008.06.26 |
ASP.NET IHttpHandler와 IHttpModule (0) | 2008.06.26 |
ASP.NET 파일 다운로드 제어 (0) | 2008.06.26 |