TextButton

非推奨を表示

*このコンテンツは、ベータ版のAI(人工知能)を使用して翻訳されており、エラーが含まれている可能性があります。このページを英語で表示するには、 こちら をクリックしてください。

A TextButton はレンダリングに関して、TextLabel と同様の動作をし、追加の動作である GuiButton を持ちます。

テキストレンダリングを無効にするには、TextTransparency1 に設定してください。これにより、ボタンとして使用できるプレーンな長方形が生成されます。

概要

プロパティ

GuiButton から継承した プロパティ
  • 並列読み取り

    ボタンがマウスがホバーしたりクリックしたりすると自動的に色が変更されるかどうかを決定します。

  • A HapticEffect インスタンスは、GuiButton がホバリングされているときに再生する。

  • 並列読み取り

    GUI 要素が表示されている間、true であれば、右マウスボタンが下になっていない限り、マウスはロックされません。

  • A HapticEffect インスタンスは、GuiButton が押されたときに再生する。

  • 並列読み取り

    オブジェクトが選択されたかどうかを示すブールプロパティ。

  • 並列読み取り

    GuiButton のスタイルを、事前決定されたスタイルのリストに基づいて設定します。

GuiObject から継承した プロパティGuiBase2d から継承した プロパティ

方法

GuiObject から継承した 方法

イベント

GuiButton から継承した イベントGuiObject から継承した イベントGuiBase2d から継承した イベント

プロパティ

ContentText

読み取り専用
複製されていません
並列読み取り

このプロパティは、Text に含まれる正確に描画されているもののコピーを提供します。これは、TextButton によって描画されているものです。これは、リッチテキスト マークアップ用のスタイルタグを排除するのに便利です;たとえば、RichText が有効になっていると、ContentText プロパティはユーザーに表示されるテキストを示します。


<th>テキスト</th>
<th>コンテンツテキスト</th>
</tr>
</thead>
<tbody>
<tr>
<td><code>偽</code></td>
<td><b>こんにちは、<br/> 世界!</b></td>
<td><b>こんにちは、<br/> 世界!</b></td>
</tr>
<tr>
<td><code>真</code></td>
<td><b>こんにちは、<br/> 世界!</b></td>
<td>こんにちは、世界!</td>
</tr>
</tbody>
リッチテキスト
非表示
複製されていません
並列読み取り

このプロパティは、TextButton がテキストをレンダリングするための複数の事前定義されたフォントの 1つを選択します。いくつかのフォントには、ボールド、イタリック、および/またはライトの変形があります。

Enum.Font.Legacy フォントを除いて、各フォントは TextSize プロパティと同じ線高さでテキストをレンダリングします。

フォント Enum.Font.Code は唯一のモノスペースフォントです。それは、それぞれのキャラクターが同じ幅と高さ比率 1:2 を持ち、それぞれのキャラクターの幅が TextSize プロパティの約半分を持つユニークなプロパティを持っています。

このプロパティは、FontFace プロパティと同期されています。

コードサンプル

This code sample renders a list of all the available fonts.

Show All Fonts

local frame = script.Parent
-- Create a TextLabel displaying each font
for _, font in pairs(Enum.Font:GetEnumItems()) do
local textLabel = Instance.new("TextLabel")
textLabel.Name = font.Name
-- Set the text properties
textLabel.Text = font.Name
textLabel.Font = font
-- Some rendering properties
textLabel.TextSize = 24
textLabel.TextXAlignment = Enum.TextXAlignment.Left
-- Size the frame equal to the height of the text
textLabel.Size = UDim2.new(1, 0, 0, textLabel.TextSize)
-- Add to the parent frame
textLabel.Parent = frame
end
-- Layout the frames in a list (if they aren't already)
if not frame:FindFirstChildOfClass("UIListLayout") then
local uiListLayout = Instance.new("UIListLayout")
uiListLayout.Parent = frame
end

FontFace

並列読み取り

このプロパティは、Font プロパティと似ていますが、Enum.Font に存在しないフォントを設定できます。

このプロパティは、Font プロパティと同期されて、FontFace でフォントが対応する Enum.Font またはない場合は Enum.Font.Unknown の値に設定されます。

LineHeight

並列読み取り

線の高さを制御し、フォントの em スクエアサイズの倍数として、TextButton のテキストラインのスペースをスケーリングします。有効な値の範囲は 1.0 から 3.0 に、デフォルトは 1.0 です。

LocalizedText

非表示
読み取り専用
複製されていません
並列読み取り

このプロパティは、TextButtonGuiBase2d.Localize を考慮すべきかどうかを設定します。

MaxVisibleGraphemes

並列読み取り

このプロパティは、TextButton に表示される最大グラフェム数 (またはテキストの単位)を制御します。主に、キャラクターが一度に現れる タイプライター効果 を作成する簡単な方法として提供されます。

プロパティを変更すると、表示可能なグラフェムの位置やサイズが変更されることはありません;レイアウトは、すべてのグラフェムが表示されているように計算されます。

プロパティを -1 に設定すると、制限が無効になり、Text 全体が表示されます。

OpenTypeFeatures

並列読み取り

OpenTypeFeaturesError

読み取り専用
複製されていません
並列読み取り

RichText

並列読み取り

このプロパティは、TextButton がテキストを リッチテキスト マークアップを使用して太字、斜体、特定の色などの文字列のスタイルセクションにスタイル化するかどうかを決定します。

リッチテキストを使用するには、Text 文字列にリッチテキスト形式タグを含めるだけでよい。

Text

並列読み取り

このプロパティは、TextButton によってレンダリングされたテキストコンテンツを決定します。画面にレンダリングされた文字列のビジュアルプロパティは、 、 、 、 、 、 、 、 および によって決まります。

🔒 などの絵文字や、TextColor3 プロパティに影響を受けない他のシンボルをレンダリングすることは可能です。これらは Script および LocalScript オブジェクト、および プロパティ ウィンドウ内のフィールドに貼り付けることができます。

このプロパティには新行文字が含まれる可能性があります。同様に、このプロパティにはタブ文字が含まれる可能性がありますが、代わりにスペースとしてレンダリングされます。

コードサンプル

This code sample creates a fading banner for a TextLabel. It fades text out, chooses a random string (avoiding repetition), and fades back in.

Fading Banner

local TweenService = game:GetService("TweenService")
local textLabel = script.Parent
local content = {
"Welcome to my game!",
"Be sure to have fun!",
"Please give suggestions!",
"Be nice to other players!",
"Don't grief other players!",
"Check out the shop!",
"Tip: Don't die!",
}
local tweenInfo = TweenInfo.new(1, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut)
local RNG = Random.new()
local fadeIn = TweenService:Create(textLabel, tweenInfo, {
TextTransparency = 0,
})
local fadeOut = TweenService:Create(textLabel, tweenInfo, {
TextTransparency = 1,
})
local lastIndex
while true do
-- Step 0: Fade out before doing anything
fadeOut:Play()
task.wait(tweenInfo.Time)
-- Step 1: pick content that wasn't the last displayed
local index
repeat
index = RNG:NextInteger(1, #content)
until lastIndex ~= index
-- Make sure we don't show the same thing next time
lastIndex = index
-- Step 2: show the content
textLabel.Text = content[index]
fadeIn:Play()
task.wait(tweenInfo.Time + 1)
end

This code sample demonstrates emoji rendering using the Text property.

Emoji in Text

local textLabel = script.Parent
local moods = {
["happy"] = "😃",
["sad"] = "😢",
["neutral"] = "😐",
["tired"] = "😫",
}
while true do
for mood, face in pairs(moods) do
textLabel.Text = "I am feeling " .. mood .. "! " .. face
task.wait(1)
end
end

TextBounds

読み取り専用
複製されていません
並列読み取り

この読み込み専用プロパティは、オフセットでレンダリングされたテキストの絶対サイズを反映し、テキストを長方形に配置しようとする場合、このプロパティは、テキストを配置するために必要な長方形の最小サイズを反映します。

TextService:GetTextSize() を使用すると、TextBounds にどのような文字列が与えられるか、FontTextSize 、フレームサイズが予測できます。

TextColor3

並列読み取り

このプロパティは、TextButton 要素によってレンダリングされたすべてのテキストの色を決定します。

コードサンプル

This code sample makes a TextLabel or TextButton count backwards from 10, setting the text color as it does so.

Countdown Text

-- Place this code in a LocalScript within a TextLabel/TextButton
local textLabel = script.Parent
-- Some colors we'll use with TextColor3
local colorNormal = Color3.new(0, 0, 0) -- black
local colorSoon = Color3.new(1, 0.5, 0.5) -- red
local colorDone = Color3.new(0.5, 1, 0.5) -- green
-- Loop infinitely
while true do
-- Count backwards from 10 to 1
for i = 10, 1, -1 do
-- Set the text
textLabel.Text = "Time: " .. i
-- Set the color based on how much time is left
if i > 3 then
textLabel.TextColor3 = colorNormal
else
textLabel.TextColor3 = colorSoon
end
task.wait(1)
end
textLabel.Text = "GO!"
textLabel.TextColor3 = colorDone
task.wait(2)
end

TextDirection

並列読み取り

Enum.TextDirection において、テキストがレンダリングされる。

TextFits

読み取り専用
複製されていません
並列読み取り

ボタンのテキストがそのサイズ内に収まっているかどうかのブール表現。

TextScaled

並列読み取り

このプロパティは、テキストがボタンの全体のスペースを埋めるようにスケールするかどうかを決定します。有効にすると、TextSize は無視され、TextWrapped が自動的に有効になります。このプロパティは、BillboardGuis 内でテキスト要素をレンダリングするのに便利です。このプロパティがオンスクリーン UI で使用されると、可能なテキストサイズの範囲を制限するために UITextSizeConstraint を使用するのが役立つかもしれません。

自動サイズ調整

TextScaled の使用を避け、代わりに AutomaticSize プロパティを活用するようにUIを調整することをお勧めします。以下は、2つのプロパティの主な違いです:

  • TextScaled コンテンツ (テキスト) をスケールして、UI に対応します。注意深く考えないと、テキストが小さすぎると読み込みできなくなる可能性があります。

  • AutomaticSize UIを再サイズ化して、一貫したフォントサイズを維持しながらコンテンツを容納します。詳細は、ここ を参照してください。

さらに、両方の AutomaticSizeTextScaled を同じ TextButton に適用しないことをお勧めします。 AutomaticSize は、GuiObject が使用できる最大のスペース量 (この場合、テキスト) を決定し、TextScaled は、AutomaticSize によって決定された利用可能なスペースを使用して、フォントサイズを最大フォントサイズ (100) まで拡大します (サイズ制限がない場合)。

TextSize

並列読み取り

このプロパティは、レンダリングされたテキストの 1行の高さを決定します。ユニットはオフセットであり、ポイントではありません (ほとんどのドキュメント編集プログラムで使用されるもの)。フォント Enum.Font.Legacy はこのプロパティを持っていません。

TextStrokeColor3

並列読み取り

この属性は、レンダリングされたテキストのストロークまたはアウトラインの色を設定します。以下の TextStrokeTransparency とともに、テキストストロークの最終的な視覚外見を決定します。

色のグラデーションをサポートする強力な代替として、UIStroke を参照してください。

TextStrokeTransparency

並列読み取り

このプロパティは、レンダリングされたテキストのストロークまたはアウトラインの透明度を設定します。以下の TextStrokeColor3 とともに、テキストストロークの最終的な視覚外見を決定します。

テキストストロークは同じ透明度の複数のレンダリングであるため、このプロパティは本質的に4倍に増加します。そのため、より淡い効果を得るために、TextStrokeTransparency0.75 から 1 までの範囲に設定することをお勧めします。

色のグラデーションをサポートする強力な代替として、UIStroke を参照してください。

TextTransparency

並列読み取り

このプロパティは、TextButton によってレンダリングされたすべてのテキストの透明度を決定します。

TextTruncate

並列読み取り

TextButton に表示されるテキストのトリミングを制御します。

TextWrapped

並列読み取り

有効にすると、このプロパティは TextButton 要素のスペース内で複数の行にテキストをレンダリングし、TextBounds が要素の GuiBase2d.AbsoluteSize を超えることはありません。これは、長いテキストのラインを複数のラインに分割することで実現します。

行のブレークが白いスペースを好む; 長い未分割の単語が要素の幅を超えた場合、その単語は複数の行に分割されます。

さらに行が壊れると、テキストの縦高( Y コンポーネントの TextBounds )が要素の縦高( Y コンポーネントの GuiBase2d.AbsoluteSize )を超えると、その行はすべてくレンダリングされない。

TextXAlignment

並列読み取り

このプロパティは、オブジェクトのスペース内でレンダリングされたテキストの横向き配置を決定します。TextYAlignment と一緒に使用して、両軸のテキスト配置を完全に決定します。

このプロパティは、読み込み専用プロパティ TextBounds および TextFits に影響しないことに注意してください。

TextYAlignment

並列読み取り

このプロパティは、オブジェクトのスペース内でレンダリングされたテキストの垂直配置を決定します。TextXAlignment と一緒に使用して、両軸のテキスト配置を完全に決定します。

このプロパティは、読み込み専用プロパティ TextBounds および TextFits に影響しないことに注意してください。

方法

イベント