実習・C#ビギナのためのユーザインターフェースのプログラミング入門
実習・C#ビギナのためのユーザインターフェースのプログラミング入門
|
|
【開催日】2025年2月26日(水) 10:00-17:00 1日コース
【セミナNo.】ES24-0147 【受講料】24,000円(税込)
【会場】東京・巣鴨 CQ出版社セミナ・ルーム [地図]
【セミナNo.】ES24-0147 【受講料】24,000円(税込)
【会場】東京・巣鴨 CQ出版社セミナ・ルーム [地図]
本セミナでは,GUI(Graphical User Interface)部品(注1)を使うウィンドウ・アプリを開発する際に必要になる,GUI部品を扱うためのプログラミングについて詳しく解説する.プログラム言語としては,Visual Studio 2022(無償で使えるCommunity版)のC# を使う.
C# の入門書では,コンソール・アプリ(注2)の作り方を中心とした内容で,GUIを使うウィンドウ・アプリの作り方をほとんどまたは全く取り上げていないものも少なくない.しかし,現在ではアプリを開発する際に,コンソール・アプリではなく,ウィンドウ・アプリを作ることが求められることが多いのではないかと思う.
そこで,本セミナでは,ボタン(Button),テキスト・ボックス(TextBox),ラベル(Label),フォーム(Form)などの基本的なGUI部品を扱うためのプログラムや,マウス操作のためのプログラムの作り方などについて,実習をまじえて解説していく.
なお,GUI部品を扱うプログラムを作成する際に使うC# に特有の便利なことがら(デリゲート,ラムダ式,LINQ(Language Integrated Query:統合言語クエリ),ジェネリック・コレクション,拡張メソッド,foreach文,例外など)についても,必要最小限の解説を行う.
※ 講師作成のプログラム,およびセミナで作成したプログラムはお持ち帰り可能です.
(注1)GUI部品:ウィジェット(Widget)とも呼ばれる.MicroSoftでは「コントロール(Control)」という用語を使っている.
(注2)コンソール・アプリ:OSのコマンド・ライン・インターフェースを利用して実行されるアプリ.言い換えれば,DOS窓(Windowsのコマンド・プロンプト)で,文字ベースで使う(CUI:Character-based User Interface)アプリのこと.
C# の入門書では,コンソール・アプリ(注2)の作り方を中心とした内容で,GUIを使うウィンドウ・アプリの作り方をほとんどまたは全く取り上げていないものも少なくない.しかし,現在ではアプリを開発する際に,コンソール・アプリではなく,ウィンドウ・アプリを作ることが求められることが多いのではないかと思う.
そこで,本セミナでは,ボタン(Button),テキスト・ボックス(TextBox),ラベル(Label),フォーム(Form)などの基本的なGUI部品を扱うためのプログラムや,マウス操作のためのプログラムの作り方などについて,実習をまじえて解説していく.
なお,GUI部品を扱うプログラムを作成する際に使うC# に特有の便利なことがら(デリゲート,ラムダ式,LINQ(Language Integrated Query:統合言語クエリ),ジェネリック・コレクション,拡張メソッド,foreach文,例外など)についても,必要最小限の解説を行う.
※ 講師作成のプログラム,およびセミナで作成したプログラムはお持ち帰り可能です.
(注1)GUI部品:ウィジェット(Widget)とも呼ばれる.MicroSoftでは「コントロール(Control)」という用語を使っている.
(注2)コンソール・アプリ:OSのコマンド・ライン・インターフェースを利用して実行されるアプリ.言い換えれば,DOS窓(Windowsのコマンド・プロンプト)で,文字ベースで使う(CUI:Character-based User Interface)アプリのこと.
1.GUIを使うアプリケーション作成の第一歩
1.1 C# のプログラム開発環境
1.2 GUIを使う簡単なウィンドウ・アプリの作成
1.3 ウィンドウ・アプリの構成とイベント駆動型のプログラミング
2.キー操作
2.1 「テキスト・ボックス(TextBox)」からの入力方法
2.2 「キー」に関するイベントの発生順序
2.3 Enterキーによる入力の確定方法
2.4 数値の文字列から変数値への変換方法
2.5 Shift,Ctrl,Altキーの確認方法
2.6 ファンクション・キーの使い方
2.7 アクセス・キーの設定(たとえば「Close(C)」の「C」の部分)
3.イベントとイベント・ハンドラ
3.1 複数のイベントを一つのイベント・ハンドラに割り当てる方法
3.2 イベントの発生元の特定
3.3 イベント・ハンドラの登録/削除
3.4 自前のイベント・ハンドラの作り方
4.GUI部品の操作
4.1 TextBox以外の入力用GUI部品(Button,RadioButton,TrackBar)
4.2 出力用GUI部品(Label,TextBox,PictureBox,MessageBox)
4.3 ジェネリック・コレクション
4.4 LINQ
4.5 GUI部品のコレクション化
4.6 GUI部品のプログラムによる生成
4.7 複数のGUI部品に対して同じ処理を行う方法
5.マウスの操作
5.1 マウス・ポインタの位置の取得
5.2 マウスで線を描画する方法
5.2.1 グラフィックスの要点
5.2.2 マウス・ボタンの情報を取得
5.3 マウス・ポインタの位置の制限
6.フォーム(Form)の操作
6.1 新しいフォームの生成法
6.2 異なるフォーム間の情報のやり取り
6.3 フォームを閉じる際の確認方法
●対象聴講者
・ Visual StudioのC# に関心のある方
・ Visual StudioのC# で,コンソール・アプリではなくGUI部品を利用するウィンドウ・アプリを作ってみたい方
・受講条件:C言語,その他のプログラム言語でプログラムを作った経験のある方が望ましい.
●講演の目標
・ C# 言語の便利な機能を使ってウィンドウ・アプリ開発が効率よくできるようになる.
・ Visual StudioのC# で,GUI部品を使うウィンドウ・アプリを作れるようになる.
1.1 C# のプログラム開発環境
1.2 GUIを使う簡単なウィンドウ・アプリの作成
1.3 ウィンドウ・アプリの構成とイベント駆動型のプログラミング
2.キー操作
2.1 「テキスト・ボックス(TextBox)」からの入力方法
2.2 「キー」に関するイベントの発生順序
2.3 Enterキーによる入力の確定方法
2.4 数値の文字列から変数値への変換方法
2.5 Shift,Ctrl,Altキーの確認方法
2.6 ファンクション・キーの使い方
2.7 アクセス・キーの設定(たとえば「Close(C)」の「C」の部分)
3.イベントとイベント・ハンドラ
3.1 複数のイベントを一つのイベント・ハンドラに割り当てる方法
3.2 イベントの発生元の特定
3.3 イベント・ハンドラの登録/削除
3.4 自前のイベント・ハンドラの作り方
4.GUI部品の操作
4.1 TextBox以外の入力用GUI部品(Button,RadioButton,TrackBar)
4.2 出力用GUI部品(Label,TextBox,PictureBox,MessageBox)
4.3 ジェネリック・コレクション
4.4 LINQ
4.5 GUI部品のコレクション化
4.6 GUI部品のプログラムによる生成
4.7 複数のGUI部品に対して同じ処理を行う方法
5.マウスの操作
5.1 マウス・ポインタの位置の取得
5.2 マウスで線を描画する方法
5.2.1 グラフィックスの要点
5.2.2 マウス・ボタンの情報を取得
5.3 マウス・ポインタの位置の制限
6.フォーム(Form)の操作
6.1 新しいフォームの生成法
6.2 異なるフォーム間の情報のやり取り
6.3 フォームを閉じる際の確認方法
●対象聴講者
・ Visual StudioのC# に関心のある方
・ Visual StudioのC# で,コンソール・アプリではなくGUI部品を利用するウィンドウ・アプリを作ってみたい方
・受講条件:C言語,その他のプログラム言語でプログラムを作った経験のある方が望ましい.
●講演の目標
・ C# 言語の便利な機能を使ってウィンドウ・アプリ開発が効率よくできるようになる.
・ Visual StudioのC# で,GUI部品を使うウィンドウ・アプリを作れるようになる.
【受講者が持参するもの】
・ 作成したプログラムなどを持ち帰るためのUSBメモリなど.
・ 作成したプログラムなどを持ち帰るためのUSBメモリなど.
【講師】
三上 直樹 氏〔職業能力開発総合大学校 名誉教授 〕
1977~1987年北大助手.1987~2017年職業能力開発総合大学校講師,助教授,教授.工学博士.「はじめて学ぶディジタルフィルタと高速フーリエ変換」などの書籍やインターフェース誌,トランジスタ技術誌の記事多数.ディジタル信号処理を専門とする.
三上 直樹 氏〔職業能力開発総合大学校 名誉教授 〕
1977~1987年北大助手.1987~2017年職業能力開発総合大学校講師,助教授,教授.工学博士.「はじめて学ぶディジタルフィルタと高速フーリエ変換」などの書籍やインターフェース誌,トランジスタ技術誌の記事多数.ディジタル信号処理を専門とする.