■103102 / inTopicNo.5) |
Re[2]: メッセージボックス |
□投稿者/ 魔界の仮面弁士 (3772回)-(2024/05/10(Fri) 14:27:58)
|
■No103090 (魔界の仮面弁士 さん) に返信 > MessageBox.Show のフォントを直接操作する機能は提供されていません。 > 諦めて標準のまま使うか……または Form を使って同様の機能を自作しましょう。 > https://stackoverflow.com/questions/6932792/how-to-create-a-custom-messagebox
No90183 にて、自作メッセージボックスの実装例を載せています。VB 版ですけれどね。 http://bbs.wankuma.com/index.cgi?mode=al2&namber=90181&KLOG=155
C# 的に言えばこんな感じ。
(1) 自作メッセージボックスな Form を用意、Label 等のフォントはご自由に。 (2) そこに、Yes/No/OK/Cancel などのボタンをデザイン時に配置。 (3) それぞれのボタンの DialogResult プロパティを設定しておく。 (4) 必要に応じて、Form の AcceptButton / CancelButton プロパティに (2) のボタンを割り当て。 (5) 自作メッセージボックスに、下記の「public static DialogResult Show(〜)」なメソッドを作成。
public static DialogResult Show(string message, string title) { using(var dialog = new 自作メッセージボックスクラス() ) { dialog.Text = title; // タイトル設定 // 必要に応じて、message 本文やアイコン等の受け渡しも行う
return dialog.ShowDialog(); // 自身を ShowDialog して、どのボタンで閉じられたのかを返す } }
(6) 呼び出し側の、var result = MessageBox.Show(msg, caption); という処理を var result = 自作メッセージボックスクラス.Show(msg, caption); に置き換える。
※必要に応じて、Show メソッドの引数を増やしたバージョンをオーバーロードする。
|
解決済み
|