コマンドをリボンに追加する
リボン コントロールを使用したアプリケーションの作成方法 への移動
このトピックでは、リボン アプリケーション ウィザードまたは「リボン コントロールを使用したアプリケーションを作成する」でリボン アプリケーションを作成する方法を順に説明します。
このトピックでは、TActionManager コンポーネントの内容と使用方法について理解していることを前提にしています。 新しい多くのプロパティがリボンの要件をサポートするときに役立つように追加されています。 リボンで表示されているコマンドに対して変更するときに、既存の多くのプロパティに影響はありません。
次に例を示します:
- 小さいボタンでは常にキャプションの左にグリフが表示されます。
- 大きいボタンでは常に上にグリフが表示されます。
- 大きいボタンではキャプションが必要です。 キャプションは最大 2 行で、ボタンの幅がキャプションに応じて変わります。 大きいボタンの高さは、コマンドが表示されているグループの高さをカバーするように固定されています。
- キャプションのない小さいボタンのみがグループに表示できます。
新しいプロパティ
CommandStyle: CommandStyle ではこのコマンドをリボンで表現するために使用するコントロールのタイプを決定します。 デフォルトのスタイルは csButton です。 CommandStyle は 1 つの例外を除いてコマンドで使用するためにコントロール タイプを決定するために幅広く使用されます。
type TCommandStyle = (csButton, csMenu, csSeparator, csText, csGallery, csComboBox, csControl, csCustom);
リボン グループでのコマンドのスタイル
|
コマンドはボタン。 |
|
コマンドは Office 2007 スタイルのコンボボックスを表示します。 以下のメモ参照。 |
|
コマンドには関連付けられた TControl の下位クラスがあります。 例では TEdit コンポーネントをリボン グループにドロップします。 |
|
ユーザー定義です。 |
|
コマンドはギャラリー、つまり選択されたとき、ギャラリーを表示します。 |
|
コマンドはメニュー項目です。 |
|
コマンドはテキスト説明の区切り記号です。 |
|
コマンドはテキストを表示するだけで、関連するコントロールがありません。 |
メモ: TRibbonComboBox をツール パレットから最初にリボン グループに配置する場合は、
csComboBox
CommandStyle のみ使用できます。
CommandProperties: CommandProperties はダイナミック プロパティ クラスです。 このプロパティの公開プロパティ(TPersistent の下位クラス)は、選択されている CommandStyle の種類により変わります。 csButton
CommandStyle を選択している場合は、使用 CommandProperties クラスは TButtonProperties と呼ばれます。 このプロパティ クラスは csButton
CommandStyle に固有のプロパティを公開します。
たとえば、ButtonSize では、ボタンが大きいボタンか小さいボタンかどうかを示すことができます。 サイズを変更してもメニューが変わらないので、csMenu
コマンドでは、ButtonSize プロパティは必要ありません。
すべての CommandProperties クラスは TCommandProperties から派生します。 csCustom CommandStyle を使用している場合は、TCommandProperties クラスから派生する必要があります。
選択した CommandStyle に依存する CommandProperties プロパティで利用可能なプロパティ
|
TButtonSize = (bsSmall, bsLarge);
TButtonType = (btNone, btDropDown, btSplit, btGallery);
// btNone - normal button
// btDropdown - button displays a drop-down menu
// btSplit - button has drop-down menu and a default action
// btGallery - button displays a gallery as a drop-down menu
TGroupPosition = (gpNone, gpStart, gpMiddle, gpEnd, gpSingle);
// Determines whether a border is drawn around a button
// gpNone - no border drawn
// gpStart - the right edge of a border is not drawn
// gpMiddle - top and bottom of border is drawn
// gpEnd - the left edge is not drawn
// gpSingle - the full border is drawn
|
|
コマンドは、Office 2007 のチェック ボックスのように表示されます。 |
|
TGalleryResize = (grNone, grVertical, grBoth);
// grNone - do not allow resizing
// grVertical - only allow vertical resizing
// grBoth - allow both vertical and horizontal resizing
|
csControl |
|
csCustom |
ユーザー定義です。 |
csGallery |
csGallery CommandProperties クラスは csButton CommandProperties クラスから派生しています。 つまり、すべての csButton プロパティは csGallery コマンド、次のギャラリー クラスに対しても利用可能です。 TGalleryType = (gtDropDown, gtGrid, gtRibbon);
// gtDropDown - Gallery is in the form of a drop-down menu.
// gtGrid - Gallery is a grid layout, meaning it can be more than one item across.
// ItemsPerRow controls the number of items across.
// gtRibbon - Gallery is in Ribbon.
ItemsPerRow
|
csMenu |
ShowRichContent |
|
コマンドは、Office 2007 のラジオ ボタンのように表示されます。 |
csSeparator |
csText および csSeparator は、同じ CommandProps クラスを共有しているため、利用できるプロパティも同じです。 |
csText |
csText および csSeparator は、同じ CommandProps クラスを共有しているため、利用可能なプロパティも同じです。 |
リボン コンポーネントに追加されたプロパティ
KeyTip: キーボードを使用しているときにコマンドを有効にするために押すキーです。 KeyTips をアクティブにするには、ALT または F10 キーを押します。
NewCol: コマンドに対して NewCol を設定すると、リボン グループの新しい列に強制的にコントロールが表示されます。 リボン グループの配置が gaVertical であるときのみこのプロパティが有効です。
NewRow: コマンドに対して NewRow を設定すると、リボン グループの新しい行に強制的にコントロールが表示されます。 リボン グループの配置が gaHorizontal であるときのみこのプロパティが有効です。
Default: True に設定するとメニュー項目のキャプションを強制的に太字で表示します。 メニュー項目に対してのみ有効です。