レ点とやる事の組み合わせで、お馴染みのチェックリストのサンプルです。
to do リストのソフト、それ以外でも良く見かけますね。
コードも少なく手軽に扱える実用的なコントロールだと思います。
CheckedListBoxを使います。
こんな感じです。
サンプルの内容
① やる事(ITEM)を CheckedListBox に追加します。
Add メソッドで追加します。
国語の勉強 ~ 英語の勉強 まで追加します。
② CheckOnClick プロパティを True に設定します。
これをTrue にしないと
チェックするのに 選択とチェックの2回クリックが必要となります。
③ やる事(ITEM)のチェック状態を設定します。
Unchecked | 未チェック状態 |
Checked | チェック状態 |
Indeterminate | 不確定のチェック状態 |
です。
④ チェックされた やる事(ITEM)を Console に 出力します。
チェックされたITEMをコンソールに出力します。
チェック状態と不確定のチェック状態のITEMを出力します。
この部品を画面に配置します。
No | 名称 | name | 部品 |
② | やることリスト(見出し) | label1 | Label |
③ | チェックリスト | checkedListBox1 | CheckedListBox |
⑪ | チェック した ITEMをConsoleに出力する | button1 | Button |
プログラミング
言語:C#
/// <summary>
/// 画面起動時処理
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Form1_Load(object sender, EventArgs e)
{
checkedListBox1.Items.Add("国語の勉強");
checkedListBox1.Items.Add("数学の勉強");
checkedListBox1.Items.Add("理科の勉強");
checkedListBox1.Items.Add("社会の勉強");
checkedListBox1.Items.Add("英語の勉強");
// すぐにチェックを適用する
checkedListBox1.CheckOnClick = true;
// アイテムのチェック状態をセットする
checkedListBox1.SetItemCheckState(0, CheckState.Unchecked); // 国語の勉強を未チェック状態にする
checkedListBox1.SetItemCheckState(1, CheckState.Unchecked); // 数学の勉強を未チェック状態にする
checkedListBox1.SetItemCheckState(2, CheckState.Checked); // 理科の勉強をチェック状態にする
checkedListBox1.SetItemCheckState(3, CheckState.Unchecked); // 社会の勉強を未チェック状態にする
checkedListBox1.SetItemCheckState(4, CheckState.Indeterminate); // 英語の勉強を不確定な状態のチェックにする
}
/// <summary>
/// チェック した ITEMをConsoleに出力するクリック処理
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
// チェックされたITEMを処理する
foreach (int i in checkedListBox1.CheckedIndices)
{
// チェックされたITEMを出力する
if (checkedListBox1.GetItemCheckState(i) == CheckState.Checked) {
Console.WriteLine($"{checkedListBox1.Items[i]} 完了");
}
// チェックされたITEM(不確定な状態)を出力する
if (checkedListBox1.GetItemCheckState(i) == CheckState.Indeterminate)
{
Console.WriteLine($"{checkedListBox1.Items[i]} 完了予定");
}
}
}
実行結果
画面起動時
チェック
チェック した ITEMをConsoleに出力するクリック
以上です。