Windows XPとWindows Vistaのメッセージ系ダイアログを画面キャプチャで比較

メーリングリストで話題になったMessageDlgのアイコンの問題ですが、
Windows Vistaから標準アイコンのガイドラインが変更されていたことが原因でした。

「DEKOのざつだん。」に詳細なまとめが掲載されています。

本当にややこしいですので、画面キャプチャ付きで比較してみました。
(C++Builder XEを使用しています。)

MessageDlgの比較

UseLatestCommonDialogs=true の場合
UseLatestCommonDialogs = true;
MessageDlg("メッセージ", mtConfirmation, TMsgDlgButtons() << mbOK, 0);

Windows XPの場合

Windows Vistaの場合

※情報アイコンで表示されています。

UseLatestCommonDialogs=false の場合
UseLatestCommonDialogs = false;
MessageDlg("メッセージ", mtConfirmation, TMsgDlgButtons() << mbOK, 0);

Windows XPの場合

Windows Vistaの場合

TaskMessageDlgの比較

UseLatestCommonDialogs=true の場合
UseLatestCommonDialogs = true;
TaskMessageDlg(L"タイトル", L"メッセージ", mtConfirmation, TMsgDlgButtons() << mbOK, 0);

Windows XPの場合

Windows Vistaの場合

※情報アイコンで表示されています。

UseLatestCommonDialogs=false の場合
UseLatestCommonDialogs = false;
TaskMessageDlg(L"タイトル", L"メッセージ", mtConfirmation, TMsgDlgButtons() << mbOK, 0);

Windows XPの場合

Windows Vistaの場合

※情報アイコンで表示されています。

TaskDialogの比較

MainIconに「tdiInformation」を指定した場合

TaskDialog1->Execute();

Windows XPの場合

Windows Vistaの場合

MainIconに「32514」を指定した場合

TaskDialog2->Execute();

Windows XPの場合

Windows Vistaの場合

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください