SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

ComponentZine(ComponentOne)

強化したリボンインターフェースでテキスト操作ができる.NETアプリケーションの作成

Ribbon for Windows Forms 2.0JのC1Ribbonコントロールを使ったアプリケーションの作成 その2

  • X ポスト
  • このエントリーをはてなブックマークに追加

リボンの修正

 続いて、リボンを修正していきます。タブを追加してグループを2つ組み込み、各グループにそれぞれリボンアイテムを追加します。

タブの追加とグループの作成

 タブとグループを作成します。C1Ribbonコントロールをアクティブにし、フローティングツールバーから[アクション]-[タブの追加]を選びます。これで、リボンにタブが1つ追加されるので、タブ名をクリックしインライン編集でタブ名を「編集」に変更します。

フローティングツールバーから[アクション]-[タブの追加]を選ぶ
フローティングツールバーから[アクション]-[タブの追加]を選ぶ

 すでにグループが1つ追加されているため、タブをクリックしてアクティブにします。フローティングツールバーから[アクション]-[グループの追加]を選択すると、グループがもう1つ追加されます。

フローティングツールバーから[アクション]-[グループの追加]を選ぶ
フローティングツールバーから[アクション]-[グループの追加]を選ぶ

 それぞれのグループ名をクリックし、インライン編集でグループ名を「タイトル」「説明文」に変更します。グループ「タイトル」をアクティブにし、フローティングツールバーから[アクション]-[ツールバーの追加]を選びます。グループにツールバーが1つ追加されます。

フローティングツールバーから[アクション]-[ツールバーの追加]を選ぶ
フローティングツールバーから[アクション]-[ツールバーの追加]を選ぶ

 今度は、追加したツールバーをクリックしてアクティブにし、ツールバーのフローティングツールバーから[アクション]-[フォントコンボボックスの追加]を選びます。フォントコンボボックスは、アプリケーションで利用可能なフォント名の一覧をリスト表示するコントロールで、フォントリストを作成する処理があらかじめ組み込まれています。

ツールバーのフローティングツールバーから[アクション]-[フォントコンボボックスの追加]を選ぶ
ツールバーのフローティングツールバーから[アクション]-[フォントコンボボックスの追加]を選ぶ

 リボンの作成は、このようにアイテムを追加したい親のアイテムのフローティングツールバーから「アクション」を選んで、組み込みたいアイテムを選択していきます。

 同じ操作を繰り返し、ツールバーのフローティングツールバーから次のアイテムを追加します。

  • RibbonComboBox
  • RibbonColorPicker

 コンボボックスはテキストを削除し[テキスト領域の幅]を「30」にします。いずれもコンボボックスのフローティングツールバーで操作します。

 カラーピッカーは、フォントの色を選択するカラーパレットを表示するコントロールで、色を選択する機能があらかじめ組み込まれています。コードなどは一切書く必要はありません。

 コンボボックスは、WindowsフォームのComboBoxコントロールと同じ機能を持ったコントロールで、ここではフォントサイズを選んでもらうように、あとでコードを設定します。

カラーピッカーとフォントコンボボックス
カラーピッカーとフォントコンボボックス
コンボボックスの[テキスト領域の幅]を「30」にする
コンボボックスの[テキスト領域の幅]を「30」にする

 そして、ツールバーに最初から組み込まれているボタンをフローティングツールバーの[削除]で削除します。

ボタンを削除
ボタンを削除

 ツールバーをもう1つ追加し、フローティングツールバーから[アクション]-[トグルボタンの追加]を使ってトグルボタンを3個追加します。また、最初に組み込まれていたボタンを削除します。

 トグルボタンは、テキストを削除し[画像の変更]で「小画像」を左のトグルボタンから次のように設定します。

トグルボタンの設定値
トグルボタン 小画像
ribbonToggleButton1 AlignTextLeft
ribbonToggleButton2 AlignTextCenter
ribbonToggleButton3 AlignTextRight

 このように、あらかじめボタン用の画像(アイコン)が多数用意されており、ほとんどのツールバーのボタンの画像を設定できます。

「画像の変更」で「小画像」を設定する
「画像の変更」で「小画像」を設定する

 トグルボタンとは、Windowsフォームのコントロール「RadioButton」と同じような働きをするボタンで、グループに設定しどれか1つをクリックすると、他のボタンがポップアップするため、必ずグループ内でどれか1つしか選べないというボタンです。したがって、トグルボタンを配置したらグループ化をする処理が必要になります。

 これは、各ribbonToggleButtonの「ToggleGroupName」プロパティに同じグループ名を設定します。設定にはプロパティウィンドウを使用し、ここでは「Align」というグループ名を設定します。

出来上がったツールバー
出来上がったツールバー

 もう1つのグループ「説明文」をクリックしてアクティブにし、フローティングツールバーから[アクション]-[ボタンの追加]を選びます。そして、テキストを「開く」に変更し、「画像の変更」で「大画像」を「Open」に設定します。

 このボタンは、コードからOpenFileDialogコントロールを呼び出し、RichTextBoxコントロールでテキストまたはリッチテキストファイルを表示する処理を組み込みます。

「画像の変更」で「大画像」を「Open」に設定する
「画像の変更」で「大画像」を「Open」に設定する

 最後に、トグルボタンにツールチップを設定します。トグルボタンをアクティブにし、プロパティウィンドウにあるToolTipプロパティをクリックします。ツールチップ用のエディタが起動するので、「Office」タブの「タイトル」と「本文」を以下のように設定します。

トグルボタンの値を変更
トグルボタン タイトル 本文
RibbonToggleButton1 左揃え 選択した文字列を左に揃えます
RibbonToggleButton2 中央揃え 選択した文字列を中央に揃えます
RibbonToggleButton3 右揃え 選択した文字列を右に揃えます

 なお、このツールチップはHTMLで作成されるので、もっと凝ったツールチップにすることもできます。

 今回作成したツールチップは、以下のようなHTML文になります。

<table><tr>
  <td><parm></parm></td>
  <td><b><parm>左揃え</parm></b></td>
</tr></table>
<parm><hr noshade size=1 style='margin:2' color=#808080></parm>
<div style='margin:1 12'><parm>
  選択した文字列を左に揃えます
</parm></div>
<parm></parm>
<table><tr>
  <td><parm></parm></td>
  <td><b><parm></parm></b></td>
</tr></table>
ツールチップ用のエディタで編集する
ツールチップ用のエディタで編集する

 以上で、リボンの修正は終了です。

ステータスバーの設定

 最後に、フォーム下部に配置したステータスバーを設定します。このステータスバーでは、右端にラベルを配置し、開いたファイルのパス名とファイル名を表示するのに使用します。

 ステータスバーは、右ペインと左ペインに分かれており、それぞれリボンアイテムを組み込むことができます。ここでは、右のペインにラベルを組み込むため、右ペインをアクティブにしてフローティングツールバーから[アクション]-[ラベルの追加]を選びます。そして、ラベルのフローティングツールバーでテキストを削除します。

左右のペインの位置と右ペインのフローティングツールバーから[アクション]-[ラベルの追加]を選ぶ
左右のペインの位置と右ペインのフローティングツールバーから[アクション]-[ラベルの追加]を選ぶ

次のページ
各アイテムのイベント処理

修正履歴

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加
ComponentZine(ComponentOne)連載記事一覧

もっと読む

この記事の著者

瀬戸 遥(セト ハルカ)

8ビットコンピュータの時代からBASICを使い、C言語を独習で学びWindows 3.1のフリーソフトを作成、NiftyServeのフォーラムなどで配布。Excel VBAとVisual Basic関連の解説書を中心に現在まで40冊以上の書籍を出版。近著に、「ExcelユーザーのためのAccess再...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/6547 2012/04/26 18:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング