GUIの作成(2)
コマンドリンクの処理
作成した各ページのコマンドリンクに実行処理を組み込むには、各コマンドリンクのc1CommandオブジェクトのClickイベントハンドラを使用します。
フォームデザイナ上で処理を組み込みたいコマンドリンクを一度クリックします。プロパティウィンドウのオブジェクトが「c1CommandLink」に切り変わります。その状態でもう一度コマンドリンクをクリックするとオブジェクトが「c1Command」に切り替わりますので、プロパティウィンドウをイベントに切り替え、Clickイベントをダブルクリックすると、Clickイベントハンドラが作成されます。
あとは、このイベントハンドラに処理を作成します。
ここでは動作確認のため、とりあえず「新規作成」と「開く」コマンドリンクに、メッセージボックスを表示する処理を組み込みました。
Public Class Form1 Private Sub c1Command1_Click(sender As System.Object, e As C1.Win.C1Command.ClickEventArgs) Handles c1Command1.Click MessageBox.Show("新規作成") End Sub Private Sub c1Command2_Click(sender As System.Object, e As C1.Win.C1Command.ClickEventArgs) Handles c1Command2.Click MessageBox.Show("開く") End Sub Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load RichTextBox1.LoadFile(Application.StartupPath + "\test.rtf", RichTextBoxStreamType.RichText) End Sub End Class
namespace C1Outbar_winform_cs { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void c1Command1_Click(object sender, C1.Win.C1Command.ClickEventArgs e) { MessageBox.Show("新規作成"); } private void c1Command2_Click(object sender, C1.Win.C1Command.ClickEventArgs e) { MessageBox.Show("開く"); } private void Form1_Load(object sender, EventArgs e) { richTextBox1.LoadFile(Application.StartupPath + "/test.rtf", RichTextBoxStreamType.RichText); } } }
以上で出来上がりです。「新規作成」と「開く」コマンドリンクをクリックすると、メッセージボックスが表示されます。
まとめ
もともと操作体系を統一するために導入されたメニューやツールバーですが、アプリケーションのGUI上の個性がなくなり、パソコンの普及とともに登場したアプリケーションに不慣れな人には、ツールバーのボタンが何の記号なのかよく分からない、という事態を招いています。
C1OutBarコントロールは、アイコンとテキストでコマンド操作を表示し、かつページを折りたたむことで余計な操作を隠してくれるので、より分かりやすい操作系の導入とフォームの有効活用という、相反するような課題を解決してくれます。