【Delphi】MessageDlgのデフォルトボタンを変える
MessageDlgでデフォルトでフォーカスされているボタンを、CancelやNoにしたい場合
//以下はYesとNoを出してデフォルトフォーカスをNoにする場合のサンプル try Dlg := CreateMessageDialog(msg,mtWarning,[mbYes,mbNo]); Dlg.ActiveControl := TWinControl(Dlg.FindComponent('No')); Result := Dlg.ShowModal; finally Dlg.Free; end;
MessageBoxならDefaultBtnを引数で渡すことができるが、
MessageDlgは出来ない。
仕方ないからいったんCreateDlgした後にActiveControlを変更するという方法で対応しました。