Q&A

  • MessageBox에서 2nd button에 포커스를...
안녕하세요...^^

델파이 허저비가 글을 올립니다.

MessageBox를 이용하여 Yes/No를 묻는 처리가 있는데,

기본포커스를 Yes가 아닌 No에 맞추고 싶은데 팁을 찾을수가 없어서

이렇게 글을 올렸습니다.



2  COMMENTS
  • Profile
    박성훈 2003.06.13 01:51

    안녕하세요?
    아래 코드를 참조하세요. 아마도 원하시는 상수가 windows.pas정의되어 있을겁니다.

    if Application.MessageBox('두번째 버튼에 포커스가 가죠?', '테스트', 292)
    = ID_YES then
    begin

    end;
  • Profile
    델을시작하며 2003.06.13 02:14
    # windows.pas에 정의된 상수를 뽑았습니다.

      MB_OK = $00000000;
      MB_OKCANCEL = $00000001;
      MB_ABORTRETRYIGNORE = $00000002;
      MB_YESNOCANCEL = $00000003;
      MB_YESNO = $00000004;
      MB_RETRYCANCEL = $00000005;

      MB_ICONHAND = $00000010;
      MB_ICONQUESTION = $00000020;
      MB_ICONEXCLAMATION = $00000030;
      MB_ICONASTERISK = $00000040;
      MB_USERICON = $00000080;
      MB_ICONWARNING                 = MB_ICONEXCLAMATION;
      MB_ICONERROR                   = MB_ICONHAND;
      MB_ICONINFORMATION             = MB_ICONASTERISK;
      MB_ICONSTOP                    = MB_ICONHAND;

      MB_DEFBUTTON1 = $00000000;
      MB_DEFBUTTON2 = $00000100;
      MB_DEFBUTTON3 = $00000200;
      MB_DEFBUTTON4 = $00000300;

      MB_APPLMODAL = $00000000;
      MB_SYSTEMMODAL = $00001000;
      MB_TASKMODAL = $00002000;
      MB_HELP = $00004000;                          { Help Button }

      MB_NOFOCUS = $00008000;
      MB_SETFOREGROUND = $00010000;
      MB_DEFAULT_DESKTOP_ONLY = $00020000;

      MB_TOPMOST = $00040000;
      MB_RIGHT = $00080000;
      MB_RTLREADING = $00100000;

      MB_SERVICE_NOTIFICATION = $00200000;
      MB_SERVICE_NOTIFICATION_NT3X = $00040000;

      MB_TYPEMASK = $0000000F;
      MB_ICONMASK = $000000F0;
      MB_DEFMASK = $00000F00;
      MB_MODEMASK = $00003000;
      MB_MISCMASK = $0000C000;