GUIButton是一个抽象类,继承自 GuiObject 。它是 ImageButton 和 TextButton 的对象。它
GuiButton 的最重要事件是 GuiButton.Activated,这是一个 多平台事件,发生在按钮激活时。当使用鼠标时,这意味着单击按钮并释放鼠标仍然位于 UI 对象
概要
属性
确定是否在鼠标悬停或单击时自动更改按钮的颜色。
如果 GUI 元素可见,鼠标不会锁定,除非右键点按。
一个Boolean属性,表示对象是否已选择。
根据预定义风格列设置图形按钮的风格。
确定是否同时输入。
对 GuiObject 的起始位置,相对于其绝对大小。
决定是否按照子内容进行调整。
确定 GuiObject 背景颜色。
确定 GuiObject 背景和边框的透明度。
确定 GuiObject 边框的颜色。
确定GuiObject边界的方式是与其尺寸相对于其他方式。
确定 GuiObject 边框的像素宽度。
决定是否在父 GUI 元素外的子元素 GuiObjects 会渲染。
确定玩家是否在 GuiObject 上主动按着。
确定 GuiButton 是否可以与或不可以与之交互,或 GuiState 的 GuiObject 是否正在变更或不变更。
控制使用 GuiObject 与 UIGridStyleLayout 时的排序顺序。
设置 GuiObject 将在游戏手柄选择器向下移动时选择。
设置 GuiObject 将在游戏手柄选择器移动到左侧时选择。
设置 GuiObject ,该选项卡将在游戏手柄选择器移动到右侧时被选中。
设置 GuiObject ,该选项卡将在游戏手柄选择器上移动时选择。
确定 GuiObject 的像素和向量位置。
确定GuiObject的旋转角度。
确定游戏手柄是否可以选择GUI。
覆盖游戏手柄的默认装饰。
游戏手柄选择 GuiObjects 的顺序。
确定 GuiObject 的像素和浮点大小。
设置 Size 轴,其父元素对象的大小将对应于其大小。
Class.GuiObject.BackgroundTransparency|BackgroundTransparency 和 TextTransparency 的混合属性。
确定 GuiObject 和它的子代是否会被渲染。
确定GuiObject 在其他人的相对位置上渲染的顺序。
描述 UI 元素的实际屏幕位置,以像素计。
描述 UI 元素的实际屏幕旋转度。
描述 UI 元素的实际屏幕大小,以像素计。
设置为“真”时,本地化将被应用到此 GuiBase2d 和它的子代。
一个引用 LocalizationTable 用于应用自动本地化到此 GuiBase2d 和它的子代。
在下向方向中自定义游戏手柄选择行为。
在左向向选择游戏手柄的行为进行自定义。
自定义游戏手柄选择行为在正确的方向。
在上向方向中自定义游戏手柄选择行为。
允许自定义游戏手柄选择移动。
方法
继承自GuiObject的方法- TweenPosition(endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
顺滑地将一个 GUI 移到一个新的 UDim2 。
- TweenSize(endSize : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
无缝地将 GUI 重新 UDim2 。
- TweenSizeAndPosition(endSize : UDim2,endPosition : UDim2,easingDirection : Enum.EasingDirection,easingStyle : Enum.EasingStyle,time : number,override : bool,callback : function):bool
无缝地将 GUI 移到新的大小和位置。
活动
按钮激活时发射。
当鼠标完全离开时,发射 GUI 按钮。
发生在 GUI 对象上的鼠标左键下状态时。
发生在左键点按释放 GUI 对象时。
当鼠标完全点击 GUI 按钮时,发射。
当鼠标处于 GUI 对象上的右键下状态时,发射。
发生在 GUI 对象上释放右键时。
发生在用户开始通过人类-计算机界面设备(鼠标按钮,触摸开始,键盘按钮,等等)进行交互时。
发生在用户改变通过人类-计算机界面设备(鼠标按钮向下,触摸开始,键盘按钮向下等)的交互方式时。
发生在用户停止通过人类-计算机界面设备(鼠标按钮向下,触摸开始,键盘按钮向下等)的交互。
当用户将鼠标移动到 GUI 元素时,它会发生。
当用户移动鼠标时,发生。
在用户移动鼠标时,每当它在 GUI 元素内时,它就会发生。
当用户回到鼠标轮时,火焰会在鼠标上方的 GUI 元素上燃烧。
当鼠标位于 GUI 元素上时,用户会滚动鼠标轮。
当 Gamepad 选择器对 GuiObject 时,发生了焦点错误。
当游戏手柄选择器停止对 GuiObject 的焦点时发生。
在玩家开始时,持续并停止长按 UI 元素。
- TouchPan(touchPositions : Array,totalTranslation : Vector2,velocity : Vector2,state : Enum.UserInputState):RBXScriptSignal
当玩家移动其手指时,触发 UI 元素。
- TouchPinch(touchPositions : Array,scale : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
在玩家使用两个手指在 UI 元素上执行叠捏或拉动动作时触发。
- TouchRotate(touchPositions : Array,rotation : number,velocity : number,state : Enum.UserInputState):RBXScriptSignal
在玩家使用两个手指在 UI 元素上执行旋转动作时触发。
在玩家在 UI 元素上执行滑动手势时触发。
当玩家在 UI 元素上执行点击手势时触发。
- SelectionChanged(amISelected : bool,previousSelection : GuiObject,newSelection : GuiObject):RBXScriptSignal
在游戏手柄选择移动到,离开或更改连接的 GuiBase2d 或任何子对象。
属性
AutoButtonColor
自动按钮颜色确定是否在用户的 Mouse 悬停或单击时自动更改按钮的颜色。
如果是,按钮会在鼠标悬停在其上或单击时自动更改颜色。 如果是,按钮不会更改。
如果您想自定义按钮在用户的鼠标悬停或单击时变更时间,请考虑使用 ImageButton 图形用户界面,并改变元素的 ImageButton.HoverImage 和 ImageButton.PressedImage 。
请注意,这个属性不会对 ImageButton 有效,如果它的属性设置为 ImageButton.Image 图像,并且不是 null 。此外,该属性不会在鼠标悬停时对 ImageButton.HoverImage 元素在鼠标悬停时或鼠标单击时不会影响。
代码示例
local button = script.Parent
if button:IsA("ImageButton") then
if button.HoverImage and button.ClickImage then
return
end
end
button.AutoButtonColor = true
方法
活动
Activated
按钮激活时发射。 作为此事件在服务器上不会发射,因此它只能在 LocalScript 或 Script 中使用,其中 RunContext 包含 2>Class.Script2> 的 5>Class.Script.RunContext5> 。
参数
MouseButton1Click
MouseButton1Click 事件触发时,当用户的 Mouse 完全离开点击 GUI 按钮时。
通过单击,鼠标必须位于按钮的边界之内,并且必须再次按下和向上再次按下才能触发此事件。如果鼠标离开边界,它将不会发射。如果您想避免此限制,您可以使用 GuiButton.MouseButton1Down 和 MouseButton1Up 。这些事件都很相似,但
这个事件与 GuiButton.MouseButton2Click 相似,它的行为与 Class.GuiButton.MouseButton2Click 相同,只是连接到用户的右键。
注意,此事件仅对 GUI 按钮,包括 TextButtons 和 ImageButton 。它不会发射其他 GuiObjects 。
代码示例
local button = script.Parent
local function leftClick()
print("Left mouse click")
end
local function rightClick()
print("Right mouse click")
end
button.MouseButton1Click:Connect(leftClick)
button.MouseButton2Click:Connect(rightClick)
MouseButton1Down
MouseButton1Down 事件触发时,当用户按下 GUI 对象上的左侧 Mouse 按钮时。
这个事件与 GuiButton.MouseButton2Down 相似,它的行为与 Class.GuiButton.MouseButton2Down 相同,只是连接到用户的右键。
如果您正在寻找需要用户按下并释放左键鼠标在 GUI 上才能触发事件的事件,请考虑使用 GuiButton.MouseButton1Click 。
注意,此事件仅对 GUI 按钮,包括 TextButtons 和 ImageButton 。它不会发射其他 GuiObjects 。
参数
代码示例
local button = script.Parent
local function leftMouseButtonUp(x, y)
print("Left mouse up at", x, y)
end
local function leftMouseButtonDown(x, y)
print("Left mouse down at", x, y)
end
button.MouseButton1Up:Connect(leftMouseButtonUp)
button.MouseButton1Down:Connect(leftMouseButtonDown)
MouseButton1Up
MouseButton1Up 事件触发时,当用户释放左侧 Mouse 从 GUI 对象上。
这个事件与 GuiButton.MouseButton2Up 相似,它的行为与 Class.GuiButton.MouseButton2Up 相同,只是连接到用户的右键。
如果您正在寻找需要用户按下并释放左键鼠标在 GUI 上才能触发事件的事件,请考虑使用 GuiButton.MouseButton1Click 。
注意,此事件仅对 GUI 按钮,包括 TextButtons 和 ImageButton 。它不会发射其他 GuiObjects 。
参数
代码示例
local button = script.Parent
local function leftMouseButtonUp(x, y)
print("Left mouse up at", x, y)
end
local function leftMouseButtonDown(x, y)
print("Left mouse down at", x, y)
end
button.MouseButton1Up:Connect(leftMouseButtonUp)
button.MouseButton1Down:Connect(leftMouseButtonDown)
MouseButton2Click
MouseButton2Click 事件触发时,当用户的 Mouse 完全点击 GUI 按钮时。
通过单击,鼠标必须位于按钮的边界之内,并且必须再次按下和向上再次按下才能触发此事件。如果鼠标离开边界,它将不会发射。如果您想避免此限制,您可以使用 GuiButton.MouseButton2Down 和 MouseButton2Up 。这些事件都很相似,但
这个事件与 GuiButton.MouseButton1Click 相似,它的行为与其他 Class.GuiButton.MouseButton1Click 相同,只是它连接到用户的左键。
注意,此事件仅对 GUI 按钮,包括 TextButtons 和 ImageButton 。它不会发射其他 GuiObjects 。
代码示例
local button = script.Parent.Button
local function rightClick()
print("Right click pressed down and up on button.")
end
button.MouseButton2Click:Connect(rightClick)
MouseButton2Down
MouseButton2Down 事件触发时,当用户按下 GUI 对象上的右键 Mouse 时,鼠标将向下移动。
这个事件与 GuiButton.MouseButton1Down 相似,它的行为与其他没有区别,它与用户的左键鼠标按钮连接在一起。
如果您正在寻找需要用户按下并释放鼠标右键以便在 GUI 上发射事件的事件,请考虑使用 GuiButton.MouseButton2Click 。
注意,此事件仅对 GUI 按钮,包括 TextButtons 和 ImageButton 。它不会发射其他 GuiObjects 。
参数
代码示例
local gui = script.Parent
local button = gui.Button
function rightMouseButtonUp(x, y)
print("Right mouse up", x, y)
end
function rightMouseButtonDown(x, y)
print("Right mouse down", x, y)
end
button.MouseButton2Up:Connect(rightMouseButtonUp)
button.MouseButton2Down:Connect(rightMouseButtonDown)
MouseButton2Up
MouseButton2Up 事件触发时,当用户释放他们的右键 Mouse 以外的 GUI 对象时。
这个事件与 GuiButton.MouseButton1Up 相似,它的行为与其他没有区别,它与用户的左键点连接。
如果您正在寻找需要用户按下并释放鼠标右键以便在 GUI 上发射事件的事件,请考虑使用 GuiButton.MouseButton2Click 。
注意,此事件仅对 GUI 按钮,包括 TextButtons 和 ImageButton 。它不会发射其他 GuiObjects 。
参数
代码示例
local gui = script.Parent
local button = gui.Button
function rightMouseButtonUp(x, y)
print("Right mouse up", x, y)
end
function rightMouseButtonDown(x, y)
print("Right mouse down", x, y)
end
button.MouseButton2Up:Connect(rightMouseButtonUp)
button.MouseButton2Down:Connect(rightMouseButtonDown)