C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 팁&트릭
C++Builder Programming Tip&Tricks
[544] 사용자 정의 메시지 박스.
김태선 [jsdkts] 6914 읽음    2005-12-18 18:09
흔히 쓰는 ShowMesage, MessageBox 는 내부의 메시지 폰트와 칼라 등을 조절할 수 없습니다.
하지만 VCL 에서는 이를 맘대로 바꿀수 있도록 CreateMessageDialog 함수를 지원합니다.

아래는 초록색으로 질문 텍스트를 표시하는 예제입니다.
폰트 사이즈도 물론 조절가능하지만 이 경우 다이얼로그 처리 부분에서 텍스트 가로 길이를 제대로 인식하지 못해
모양이 이상하게 나오는 문제가 있습니다. 영어외의 문자에 대한 처리 배려 미숙이죠.
그런데 실행해보면 이상한게 있죠... 바로 알림 소리가 안나는 것입니다.
소리도 직접 내줘야 합니다.
ShowModal() 부르기 전에 MessageBeep( .. ); 를 호출해주면 됩니다.
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
    TForm  *f = CreateMessageDialog("당신은 빌더를 좋아 하십니까?", mtInformation, TMsgDlgButtons() << mbYes << mbNo);
    f->Caption = "질문";
    f->Font->Color = clGreen;
    int  ret = f->ShowModal();
    delete f;

    Button2->Caption = ret==mrYes ? "그렇데" : "아니래";
}

+ -

관련 글 리스트
544 사용자 정의 메시지 박스. 김태선 6914 2005/12/18
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.