ボタン (Button) 要素は、マウスカーソルの状態に応じて自動的にテクスチャやフォントカラーを変更するなどといった、一般的なボタン要素を自動化します。
Button | ボタン (Button) 要素は、マウスカーソルの状態に応じて自動的にテクスチャやフォントカラーを変更するなどといった、一般的なボタン要素を自動化します。 |
実装の詳細 | |
XML定義 | |
XMLタグ | |
任意属性 | |
backgroundtexture | 背景画像レイヤーに使用するテクスチャの名前。 |
highlighttexture | ハイライト画像レイヤーに使用するテクスチャの名前。 |
overlaytexture | オーバーレイ画像レイヤーに使用するテクスチャの名前。 |
overlayhighlighttexture | オーバーレイハイライト画像レイヤーに使用するテクスチャの名前。 |
texturescale | ボタンに使用するテクスチャの縮尺。 |
font | 使用するフォント定義の名前。 |
textAutoFitMinScale | テキストの最小縮尺。 |
linespacing | フォントの行間。 |
textalign | テキストの位置を揃えます。 |
autoresize | テキストのサイズに応じて、ボタンの縦幅を自動的に変更するかどうかを設定します。 |
autoresizewidth | テキストに合うよう、ボタンの横幅を自動的に縮めるかどうかを設定します。 |
drawchildrenfirst | ボタンの描画順を指定することができます。 |
drawHighlightOverBackground | このボタンを表示しているときに、ハイライト状態を背景画像の上に表示するかどうかを設定します。 |
mirrorTexCoords | ボタンテクスチャを縦方向に反転させることができます。 |
warnOnTextCropped | テキストがカットされている場合に、ボタンログエラーの警告を表示するかどうかを設定できます。 |
要素 | |
TextColors | テキストカラーをボタン状態毎に指定する要素。 |
TexCoords | ボタンに使用しているテクスチャの基準座標を、ボタン状態毎に指定する要素。 |
OverlayTexCoords | ボタン上のオーバーレイテクスチャの基準座標を、ボタンの状態毎に指定する要素。 |
TexSlices | 表示するテクスチャと結び付けられたスライスを、ボタン状態毎に指定する要素。 |
OverlayTexSlices | 表示するオーバーレイテクスチャと結び付けられたスライスを、ボタン状態毎に指定する要素。 |
AnimatedImages | トップレベルオーバーレイとして使用するアニメーテッドイメージの名前を、ボタン状態毎に指定する要素。 |
TextOffset | ボタンに表示されているテキストのオフセットを設定します。 |
OverlayOffset (機能しません) | オーバーレイとオーバーレイハイライト画像のためのオフセットを設定します。 |
OverlaySize | オーバーレイ画像のサイズを設定します。 |
ResizeImages | リサイズ画像の名前を、ボタン状態毎に指定するための要素です。 |
定数 | |
定数 | |
Button. | 通常 |
Button. | 通常のハイライト |
Button. | 押されている |
Button. | 押されていてハイライトしている |
Button. | 使用不可 |
Button. | 押されているが使用不可 |
関数 | |
関数 | |
ButtonSetText() | ボタン上に表示するテキストを設定します。 |
ButtonGetText() | ボタン上に現在表示されているテキストを返します。 |
ButtonSetPressedFlag() | ボタン表示を「押されている」状態に設定するための関数です。 |
ButtonGetPressedFlag() | 現在のボタン表示状態(押されているかどうか)を返します。 |
ButtonSetHighlightFlag() | ボタン表示を「ハイライト」状態に設定するための関数です。 |
ButtonGetHighlightFlag() | 現在のボタン表示状態(ハイライトしているかどうか)を返します。 |
ButtonSetDisabledFlag() | ボタン表示を「使用不可」状態に設定するための関数です。 |
ButtonGetDisabledFlag() | 現在のボタン表示状態(使用不可かどうか)を返します。 |
ButtonSetStayDownFlag() | ユーザーがマウスの左ボタンを放しても、押されたままのボタン表示を維持するかどうかを設定します。 |
ButtonGetStayDownFlag() | 現在のボタン表示状態(マウスの左ボタンを放しても、押されたままのボタン表示を維持するかどうか)を返します。 |
ButtonSetCheckButtonFlag() | チェックボタンのようにボタンを動作させたい場合に設定します。 |
ButtonGetCheckButtonFlag() | ボタンが現在、チェックボタンのように動作しているかどうかを調べて値を返します。 |
ButtonSetTexture() | 特定のボタン状態に使用するテクスチャを設定します。 |
ButtonSetTextColor() | 特定のボタン状態に使用するテキストカラーを設定します。 |
ButtonGetTextDimensions() | 指定したボタンのテキストのサイズを返します。 |
ボタン要素は5段階のコンポーネントで構成されています。特殊なボタンは利用可能なコンポーネントのサブセットのどれかを含んでいる可能性があります。各コンポーネントの表示順は次の通りです:
背景レイヤーテクスチャコンポーネントは常に表示されます。このテクスチャーは次の4つの状態のどれかになっています:
マウスカーソルがボタンの上に重なると、背景ハイライトレイヤーが背景レイヤーの上に描画されます。また、ボタンの状態に応じて次どちらかが表示されます。
このレイイング手法により、背景レイヤーに「輝き」エフェクトが表示されている押されたボタンの画像を作成することができます。
定義されている場合、オーバーレイとオーバーレイハイライトは背景、背景ハイライトと同じように動作します。
テキストは現在のボタンの状態に応じた色で、常に最後に描かれます(つまり、一番上に表示されます)。
XMLタグ | |
任意属性 | |
backgroundtexture | 背景画像レイヤーに使用するテクスチャの名前。 |
highlighttexture | ハイライト画像レイヤーに使用するテクスチャの名前。 |
overlaytexture | オーバーレイ画像レイヤーに使用するテクスチャの名前。 |
overlayhighlighttexture | オーバーレイハイライト画像レイヤーに使用するテクスチャの名前。 |
texturescale | ボタンに使用するテクスチャの縮尺。 |
font | 使用するフォント定義の名前。 |
textAutoFitMinScale | テキストの最小縮尺。 |
linespacing | フォントの行間。 |
textalign | テキストの位置を揃えます。 |
autoresize | テキストのサイズに応じて、ボタンの縦幅を自動的に変更するかどうかを設定します。 |
autoresizewidth | テキストに合うよう、ボタンの横幅を自動的に縮めるかどうかを設定します。 |
drawchildrenfirst | ボタンの描画順を指定することができます。 |
drawHighlightOverBackground | このボタンを表示しているときに、ハイライト状態を背景画像の上に表示するかどうかを設定します。 |
mirrorTexCoords | ボタンテクスチャを縦方向に反転させることができます。 |
warnOnTextCropped | テキストがカットされている場合に、ボタンログエラーの警告を表示するかどうかを設定できます。 |
要素 | |
TextColors | テキストカラーをボタン状態毎に指定する要素。 |
TexCoords | ボタンに使用しているテクスチャの基準座標を、ボタン状態毎に指定する要素。 |
OverlayTexCoords | ボタン上のオーバーレイテクスチャの基準座標を、ボタンの状態毎に指定する要素。 |
TexSlices | 表示するテクスチャと結び付けられたスライスを、ボタン状態毎に指定する要素。 |
OverlayTexSlices | 表示するオーバーレイテクスチャと結び付けられたスライスを、ボタン状態毎に指定する要素。 |
AnimatedImages | トップレベルオーバーレイとして使用するアニメーテッドイメージの名前を、ボタン状態毎に指定する要素。 |
TextOffset | ボタンに表示されているテキストのオフセットを設定します。 |
OverlayOffset (機能しません) | オーバーレイとオーバーレイハイライト画像のためのオフセットを設定します。 |
OverlaySize | オーバーレイ画像のサイズを設定します。 |
ResizeImages | リサイズ画像の名前を、ボタン状態毎に指定するための要素です。 |
ボタンに使用するテクスチャの縮尺。
この値は、テクスチャの元画像のサイズに乗算されます。
float_t | (1.0 = 100%) |
テキストカラーをボタン状態毎に指定する要素。
<TextColors> <Normal r="255" g="204" b="102" /> <NormalHighlit r="255" g="85" b="0" /> <Pressed r="255" g="85" b="0" /> <PressedHighlit r="255" g="85" b="0"/> <Disabled r="92" g="92" b="92" /> <DisabledPressed r="92" g="92" b="92" /> </TextColors>
r | 赤色の値 |
g | 緑色の値 |
b | 青色の値 |
r | 255 |
g | 255 |
b | 255 |
ボタンに使用しているテクスチャの基準座標を、ボタン状態毎に指定する要素。
背景テクスチャとハイライトテクスチャの属性を設定した場合、textureのフィールドはオプションになります。
<TexCoords> <Normal texture="" x="474" y="6" /> <NormalHighlit texture="" x="474" y="45" /> <Pressed texture="" x="474" y="45" /> <PressedHighlit texture="" x="474" y="45" /> <Disabled texture="" x="474" y="6" /> <DisabledPressed texture="" x="474" y="6" /> </TexCoords>
texture | ボタンの状態に応じたUI Texture の名前。 |
x | テクスチャのX座標。 |
y | テクスチャのY座標。 |
texture | ”” |
x | 0 |
y | 0 |
ボタン上のオーバーレイテクスチャの基準座標を、ボタンの状態毎に指定する要素。
属性として overlaytexture と overlayhighlighttexture を設定している場合、テクスチャフィールドはオプションになります。
<OverlayTexCoords> <Normal texture="" x="474" y="6" /> <NormalHighlit texture="" x="474" y="45" /> <Pressed texture="" x="474" y="45" /> <PressedHighlit texture="" x="474" y="45" /> <Disabled texture="" x="474" y="6" /> <DisabledPressed texture="" x="474" y="6" /> </OverlayTexCoords>
texture | このボタン状態で使用するUI Texture の名前。 |
x | テクスチャのX座標。 |
y | テクスチャのY座標。 |
texture | ”” |
x | 0 |
y | 0 |
表示するテクスチャと結び付けられたスライスを、ボタン状態毎に指定する要素。
背景テクスチャとハイライトテクスチャの属性を設定した場合、textureのフィールドはオプションになります。
<TexSlices> <Normal texture="" id="Bag-Button" /> <NormalHighlit texture="" id="Bag-Button-Highlighted" /> <Pressed texture="" id="Bag-Button-Selected" /> <PressedHighlit texture="" id="Bag-Button-Highlighted" /> <Disabled texture="" id="Bag-Button" /> <DisabledPressed texture="" id="Bag-Button" /> </TexSlices>
texture | ボタンの状態に応じたUI Texture の名前。 |
id | 表示するUI Texture と結び付けられたスライスのID。 |
texture | ”” |
id | ”” |
表示するオーバーレイテクスチャと結び付けられたスライスを、ボタン状態毎に指定する要素。
背景テクスチャとハイライトテクスチャの属性を設定した場合、textureのフィールドはオプションになります。
<OverlayTexSlices> <Normal texture="" id="Bag-Button" /> <NormalHighlit texture="" id="Bag-Button-Highlighted" /> <Pressed texture="" id="Bag-Button-Selected" /> <PressedHighlit texture="" id="Bag-Button-Highlighted" /> <Disabled texture="" id="Bag-Button" /> <DisabledPressed texture="" id="Bag-Button" /> </OverlayTexSlices>
texture | ボタンの状態に応じたUI Texture の名前。 |
id | 表示するUI Texture と結び付けられたスライスのID。 |
texture | ”” |
id | ”” |
トップレベルオーバーレイとして使用するアニメーテッドイメージの名前を、ボタン状態毎に指定する要素。
<AnimatedImages> <Normal def="DefaultAnimatedImageNormal" /> <NormalHighlit def="DefaultAnimatedImageNormalHightlite" /> <Pressed def="DefaultAnimatedImagePressed" /> <PressedHighlit def="DefaultAnimatedImagePressedHightlite" /> <Disabled def="" /> <DisabledPressed def="" /> </AnimatedImages>
def | このボタン状態で使用する AnimatedImage の名前。 |
def | ”” |
リサイズ画像の名前を、ボタン状態毎に指定するための要素です。
この要素を指定することで、リサイズ可能なウィンドウ上のボタンを作成することができます。
<ResizeImages> <Normal def="DefaultHorizResizeButtonNormal" /> <NormalHighlit def="DefaultHorizResizeButtonHightlite" /> <Pressed def="DefaultHorizResizeButtonPressed" /> <PressedHighlit def="DefaultHorizResizeButtonPressedHightlite" /> <Disabled def="DefaultHorizResizeButtonDisabled" /> <DisabledPressed def="DefaultHorizResizeButtonDisabled" /> </ResizeImages>
def | ボタン状態毎のリサイズ画像の名前。 |
def | ”” |
定数 | |
Button. | 通常 |
Button. | 通常のハイライト |
Button. | 押されている |
Button. | 押されていてハイライトしている |
Button. | 使用不可 |
Button. | 押されているが使用不可 |
関数 | |
ButtonSetText() | ボタン上に表示するテキストを設定します。 |
ButtonGetText() | ボタン上に現在表示されているテキストを返します。 |
ButtonSetPressedFlag() | ボタン表示を「押されている」状態に設定するための関数です。 |
ButtonGetPressedFlag() | 現在のボタン表示状態(押されているかどうか)を返します。 |
ButtonSetHighlightFlag() | ボタン表示を「ハイライト」状態に設定するための関数です。 |
ButtonGetHighlightFlag() | 現在のボタン表示状態(ハイライトしているかどうか)を返します。 |
ButtonSetDisabledFlag() | ボタン表示を「使用不可」状態に設定するための関数です。 |
ButtonGetDisabledFlag() | 現在のボタン表示状態(使用不可かどうか)を返します。 |
ButtonSetStayDownFlag() | ユーザーがマウスの左ボタンを放しても、押されたままのボタン表示を維持するかどうかを設定します。 |
ButtonGetStayDownFlag() | 現在のボタン表示状態(マウスの左ボタンを放しても、押されたままのボタン表示を維持するかどうか)を返します。 |
ButtonSetCheckButtonFlag() | チェックボタンのようにボタンを動作させたい場合に設定します。 |
ButtonGetCheckButtonFlag() | ボタンが現在、チェックボタンのように動作しているかどうかを調べて値を返します。 |
ButtonSetTexture() | 特定のボタン状態に使用するテクスチャを設定します。 |
ButtonSetTextColor() | 特定のボタン状態に使用するテキストカラーを設定します。 |
ButtonGetTextDimensions() | 指定したボタンのテキストのサイズを返します。 |
ボタン表示を「押されている」状態に設定するための関数です。
buttonName | (string) ボタンの名前。 |
isPressed | (boolean) ボタン表示を「押されている」状態にするか否か? |
nil | 戻り値無し。 |
ButtonSetPressedFlag( "SettingsResolutionUseFullscreenButton", SystemData.Settings.Resolution.useFullScreen )
ボタン表示を「ハイライト」状態に設定するための関数です。
buttonName | (string) ボタンの名前。 |
isHighlighted | (boolean) ボタン表示を「ハイライト」状態にするか否か? |
nil | 戻り値無し。 |
ButtonSetHighlightFlag( "SomeButton", true )
ボタン表示を「使用不可」状態に設定するための関数です。
使用不可にした場合、ボタンは「使用不可」の画像で表示され、ハイライトしないようになります。
buttonName | (string) ボタンの名前。 |
isDisabled | (boolean) ボタン表示を「使用不可」状態にするか否か? |
nil | 戻り値無し。 |
ButtonSetDisabledFlag("GroupMenuWindowGroupKickButton", GameData.Player.isGroupLeader == false )
ユーザーがマウスの左ボタンを放しても、押されたままのボタン表示を維持するかどうかを設定します。
buttonName | (string) ボタンの名前。 |
stayDown | (boolean) ボタンを押されたままの状態で維持するか? |
nil | 戻り値無し。 |
ButtonSetStayDownFlag( ChatWindow.Tabs[index].tabButton, true )
チェックボタンのようにボタンを動作させたい場合に設定します。
このフラグを設定すると、1クリックごとにボタンの状態が切り替わるようになります。
buttonName | (string) ボタンの名前。 |
isCheckButton | (boolean) チェックボタンのように動作させるか否か? |
nil | 戻り値無し。 |
ButtonSetCheckButtonFlag( "SettingsResolutionUseFullscreenButton", true )
特定のボタン状態に使用するテクスチャを設定します。
buttonName | (string) ボタンの名前。 |
buttonState | (integer) 設定するボタン状態。有効な値は <Button States> で確認してください。 |
textureName | (string) 使用するUI Texture の名前。 |
x | (integer) テクスチャ内のX座標。 |
y | (integer) テクスチャ内のY座標。 |
nil | 戻り値無し。 |
ButtonSetTexture("SomeButton", Button.ButtonState.NORMAL, "texture_name", 156, 40);