1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
namespace Sample3 {
using System;
using System.Drawing;
using System.Windows.Forms;
public class MyDialog : Form {
// コンストラクタ
public MyDialog() {
Label lbl = new Label();
lbl.Text = "ダイアログです";
Controls.Add(lbl);
Button btn = new Button();
btn.Text = "OK";
btn.Location = new Point (10, 30);
btn.DialogResult = DialogResult.OK;
this.AcceptButton = btn;
this.Controls.Add(btn);
btn = new Button();
btn.Text = "キャンセル";
btn.Location = new Point (120, 30);
btn.DialogResult = DialogResult.Cancel;
this.CancelButton = btn;
this.Controls.Add(btn);
this.MaximizeBox = false; // 最大化ボタンなし
this.MinimizeBox = false; // アイコン化ボタンなし
this.ShowInTaskbar = false; // タスクバーに出さない
this.FormBorderStyle = FormBorderStyle.FixedDialog; // ダイアログスタイル
this.StartPosition = FormStartPosition.CenterScreen; // 画面中央に表示
}
}
public class MyForm : Form {
// Main
public static void Main(string[] args) {
MyForm frm = new MyForm();
Application.Run(frm);
}
// コンストラクタ
public MyForm() {
// メインメニューを生成
MainMenu mm = new MainMenu();
// ファイルメニューを生成
MenuItem mi = mm.MenuItems.Add("ファイル(&F)");
mi.MenuItems.Add(new MenuItem("開く(&O)...", new EventHandler(this.FileOpen_Clicked)));
mi.MenuItems.Add("-");
mi.MenuItems.Add(new MenuItem("終了(&X)", new EventHandler(this.FileExit_Clicked), Shortcut.CtrlQ));
// ヘルプメニューを生成
mi = mm.MenuItems.Add("ヘルプ(&H)");
mi.MenuItems.Add(new MenuItem("バージョン情報(&A)...", new EventHandler(this.HelpAbout_Clicked)));
// フォームのメニューとしてセット
this.Menu = mm;
// 開くボタンを生成
Button btn = new Button();
btn.Text = "開く...";
btn.Location = new Point(2, 2); // 座標を設定
btn.Size = new Size(100, 22); // サイズを設定
btn.TabIndex = 0; // タブ順は最初
btn.Anchor = AnchorStyles.Top | AnchorStyles.Left; // 左上を固定
btn.Click += new EventHandler(this.OpenButton_Clicked);
this.Controls.Add(btn);
// テキストボックスを生成
TextBox txt = new TextBox();
txt.Text = "";
txt.Location = new Point(0, 26); // 座標を設定
txt.Size = new Size(this.ClientSize.Width, this.ClientSize.Height - 26);
// サイズを設定
txt.Multiline = true; // 複数行OKにする
txt.ScrollBars = ScrollBars.Both; // スクロールバーを表示
txt.BackColor = Color.White; // 背景色を白にする
txt.TabIndex = 1; // タブ順は2番目
txt.Anchor = AnchorStyles.Top | AnchorStyles.Bottom | AnchorStyles.Left | AnchorStyles.Right;
// 上下左右とも固定
Controls.Add(txt);
}
// ファイル−開くメニューのイベントハンドラ
private void FileOpen_Clicked(object sender, EventArgs e) {
MessageBox.Show("ファイル−開くメニューがクリックされました.");
}
// ファイル−終了メニューのイベントハンドラ
private void FileExit_Clicked(object sender, EventArgs e) {
this.Close();
}
// ヘルプ−バージョン情報メニューのイベントハンドラ
private void HelpAbout_Clicked(object sender, EventArgs e) {
MyDialog dlg = new MyDialog();
dlg.ShowDialog();
if (dlg.DialogResult == DialogResult.OK) {
MessageBox.Show("OKボタンが押されました.");
} else {
MessageBox.Show("キャンセルボタンが押されました.");
}
}
// 開くボタンのイベントハンドラ
private void OpenButton_Clicked(object sender, EventArgs e) {
MessageBox.Show("開くボタンがクリックされました.");
}
}
}
|