PluginToolbarButton
*Nội dung này được dịch bằng AI (Beta) và có thể có lỗi. Để xem trang này bằng tiếng Anh, hãy nhấp vào đây.
Một nút PluginToolbar là một đối tượng được tạo bởi chức năng PluginToolbar:CreateButton().Nó cho phép người dùng khởi động một hành động duy nhất, một lần trong Roblox Studio thông qua sự kiện Click.
Khi được nhấn, sự kiện Click bắt lửa.Một nút cũng sẽ ở trạng thái nhấn, có thể được đặt thủ công bằng cách sử dụng SetActive .Sau khi kích hoạt plugin ( Plugin:Activate() ), các nút trong tất cả các PluginToolbars khác sẽ bị tắt.Nếu tất cả các nút trong thanh công cụ đã bị tắt, plugin của thanh công cụ bị vô hiệu hóa (Plugin:Deactivate()).
Khi cửa sổ xem trò chơi không hiển thị, các nút sẽ bị vô hiệu hóa như thể thuộc tính Enabled của chúng là sai.Các nút bị vô hiệu hóa được làm mờ và không đáp ứng lại các lần nhấp của người dùng.Bằng cách đặt ClickableWhenViewportHidden thành true, bạn có thể cho phép các nút plugin vẫn có thể nhấp vào (như trong quá trình chỉnh sửa kịch bản).
Tóm Tắt
Thuộc Tính
Xác định xem liệu nút có thể được nhấp khi cửa sổ xem trò chơi được ẩn, chẳng hạn như khi chỉnh sửa một kịch bản trong một tab Studio khác.
Xác định xem liệu nút có thể nhấp vào trong phổ quátthể hay không.
Xác định biểu tượng nào nên đại diện cho nút.
Phương Pháp
Đặt trạng thái của nút plugin.
Sự Kiện
Bắt lửa khi người dùng nhấn và thả con trỏ của họ vào nút.
Thuộc Tính
ClickableWhenViewportHidden
ClickableWhenViewportHidden xác định xem có thể nhấp vào nút PluginToolbar khi cửa sổ xem trò chơi được ẩn, chẳng hạn như khi một Script đang được chỉnh sửa trong tab khác.
Thông thường, tính năng này là tốt để bật nếu một hành động được kích hoạt bởi sự kiện Click của nút plugin không xảy ra trong thế giới trò chơi (Không gian làm việc).Ví dụ, một nút mở widget phải có thuộc tính này là đúng, như thể hiện một widget có thể nhìn thấy được cho người dùng ngay cả khi xem trò chơi không hiển thị.
Enabled
Bật xác định xem liệu nút có thể bấm được trong phổ quátthể hay không.Khi thuộc tính này là sai, nút sẽ bị xám và không thể nhấp vào, ngăn người dùng không thể kích hoạt sự kiện Click.Các nút được bật mặc định.
Khi bật lại tính năng này, trạng thái nút plugin sẽ không được lưu từ trạng thái trước đó mà người dùng rời khỏi nút.Thay vào đó, nó sẽ mặc định cho trạng thái cuối cùng được thiết lập bởi SetActive() hoặc trạng thái không hoạt động nếu SetActive() chưa bao giờ được sử dụng.
Các plugin nên vô hiệu hóa các nút của họ khi hành động nút không liên quan trong bối cảnh hiện tại.Ví dụ, nút plugin gán màu ngẫu nhiên cho lựa chọn không nên được bật khi lựa chọn không có bộ phận nào.Xem các mẫu mã code để có thêm thông tin.
Xem thêm:
- ClickableWhenViewportHidden , xác định xem liệu nút có thể bấm khi xem trò chơi được ẩn (và không chỉ trong phổ quát)
Mẫu mã
This code sample is for a studio Plugin. The plugin creates a PluginToolbarButton which randomizes the BrickColor() of each selected part using BrickColor.random(). Furthermore, the button is only enabled if at least one part is selected. It does this by detecting changes in the Selection using Selection.SelectionChanged.
assert(plugin, "This script must be run as a plugin")
local Selection = game:GetService("Selection")
local toolbar = plugin:CreateToolbar("Parts")
local pluginToolbarButton = toolbar:CreateButton(
"Randomize Colors",
"Click this button to assign random colors to selected parts",
"rbxassetid://5325741572" -- A rainbow
)
local function onClick()
local selection = Selection:Get()
for _, object in pairs(selection) do
if object:IsA("BasePart") then
object.BrickColor = BrickColor.random()
end
end
end
pluginToolbarButton.Click:Connect(onClick)
local function doesSelectionContainAPart()
local selection = Selection:Get()
for _, object in pairs(selection) do
if object:IsA("BasePart") then
return true
end
end
return false
end
local function onSelectionChanged()
pluginToolbarButton.Enabled = doesSelectionContainAPart()
end
Selection.SelectionChanged:Connect(onSelectionChanged)
onSelectionChanged()
Icon
Biểu tượng xác định những gì icon nên được hiển thị cho nút trong thanh công cụ plugin.Khi thuộc tính này không được cài đặt, nút sẽ sử dụng văn bản của nút được cung cấp bởi PluginToolbar:CreateButton() thay vào đó.
Phương Pháp
SetActive
Phương pháp này có thể được sử dụng để thiết lập tình trạng hoạt động của nút plugin bằng tay.
Khi thuộc tính Enabled bị chuyển lại, nút sẽ quay lại trạng thái cuối cùng được đặt bởi phương pháp này hoặc mặc định là không hoạt động nếu phương pháp này chưa được sử dụng trước đó.
Tham Số
Lợi Nhuận
Sự Kiện
Click
Nhấp lửa khi PluginToolbarButton được nhấn và phát hành bởi người dùng.
Nhấp vào nút PluginToolbar khiến trạng thái của nút chuyển sang. Gọi SetActive để thiết lập trạng thái của nút bằng tay.
Mẫu mã
This code sample demonstrates creating a PluginToolbar and a PluginToolbarButton on it, then connecting a function onClick to the PluginToolbarButton.Click event. When pressed, the button will print "Hello, world" to the output.
assert(plugin, "This script must be run as a plugin")
local toolbar = plugin:CreateToolbar("Hello World Plugin Toolbar")
local pluginToolbarButton =
toolbar:CreateButton("Print Hello World", "Click this button to print Hello World!", "rbxassetid://133293265")
local function onClick()
print("Hello, world")
end
pluginToolbarButton.Click:Connect(onClick)