PluginToolbarButton
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Un bouton PluginToolbar est un objet créé par la fonction PluginToolbar:CreateButton().Il permet à l'utilisateur d'initier une seule action unique dans Roblox Studio via l'événement Click.
Lorsqu'il est pressé, l'événement Click se déclenche.Un bouton restera également dans l'état appuyé, qui peut être défini manuellement en utilisant SetActive .À l'activation du plugin ( Plugin:Activate() ), les boutons dans tous les autres PluginToolbars seront désactivés.Si tous les boutons dans une barre d'outils sont off, le plugin de la barre d'outils est désactivé (Plugin:Deactivate()).
Lorsque la fenêtre de jeu n'est pas visible, les boutons seront désactivés comme si leur propriété Enabled était fausse.Les boutons désactivés sont saturés et ne répondent pas aux clics de l'utilisateur.En définissant ClickableWhenViewportHidden à vrai, vous pouvez permettre aux boutons de plugin de rester cliquables (comme pendant l'édition de scripts).
Résumé
Propriétés
Détermine si le bouton peut être cliqué lorsque la fenêtre du jeu est cachée, comme lors de l'édition d'un script dans une autre fenêtre de studio.
Détermine si le bouton est cliquable en général.
Détermine quelle icône doit représenter le bouton.
Méthodes
Définit l'état du bouton du plugin.
Évènements
S'allume lorsque l'utilisateur appuie et relâche son curseur sur le bouton.
Propriétés
ClickableWhenViewportHidden
CliqueableWhenViewportHidden détermine si un bouton de barre d'outils de plugin peut être cliqué lorsque la fenêtre de jeu est cachée, comme lorsqu'un Script est en cours d'édition dans une autre fenêtre.
Typiquement, cette propriété est bonne pour activer si une action déclenchée par l'événement Click d'un bouton de plugin ne se produit pas dans le monde du jeu (Workspace).Par exemple, un bouton qui ouvre un widget devrait avoir cette propriété être vraie, comme montrer un widget est visible pour l'utilisateur même si la vue du jeu n'est pas visible.
Enabled
Activé détermine si un bouton est cliquable en général.Lorsque cette propriété est fausse, le bouton sera grisé et non cliquable, empêchant l'utilisateur de déclencher l'événement Click.Les boutons sont activés par défaut.
Lors de la réactivation de cette propriété, l'état du bouton du plugin ne sera pas souvenu de l'état précédent dans lequel l'utilisateur a quitté le bouton.Au lieu de cela, il sera défini par défaut sur l'état dernier défini par SetActive() ou sur l'état inactif si SetActive() n'a jamais été utilisé.
Les plugins doivent désactiver leurs boutons lorsque l'action du bouton n'est pas pertinente dans le contexte actuel.Par exemple, un bouton de plugin qui attribue des couleurs aléatoires à la sélection ne doit pas être activé lorsque la sélection ne contient pas de parties.Voir les échantillons de code pour plus d'informations.
Voir aussi :
- ClickableWhenViewportHidden , qui détermine si un bouton est cliquable lorsque la vue du jeu est cachée (et pas seulement en général)
Échantillons de code
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
L'icône détermine ce que icon devrait être affiché pour le bouton dans la barre d'outils du plugin.Lorsque cette propriété n'est pas configurer, le bouton utilisera plutôt le texte du bouton donné par PluginToolbar:CreateButton() .
Méthodes
SetActive
Cette méthode peut être utilisée pour définir manuellement l'état actif du bouton du plugin.
Lorsque la propriété Enabled est réactivée, le bouton reviendra à l'état dernier défini par cette méthode ou sera inactif si cette méthode n'a pas été utilisée précédemment.
Paramètres
Retours
Évènements
Click
Cliquez déclenche des incendies lorsque le bouton PluginToolbar est pressé et libéré par l'utilisateur.
En cliquant sur un bouton PluginToolbar, l'état du bouton activer/désactiver. Appelez SetActive pour définir manuellement l'état du bouton.
Échantillons de code
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)