Selection
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Le service de sélection contrôle le Instances qui est sélectionné dans Roblox Studio.
Ce service est particulièrement utile lors du développement de Plugins, car il permet à l' développeur d'accéder et de manipuler la sélection actuelle.
Actuellement sélectionné Instances peut être obtenu et défini en utilisant les fonctions Selection:Get() et Selection:Set().L'événement Selection.SelectionChanged se déclenche chaque fois que la sélection actuelle change.
Pour plus d'informations sur l'utilisation de Selection et Plugins, voir Plugin .
La sélection est également souvent utilisée dans la barre de commande, pour définir des propriétés cachées ou exécuter des fonctions pour les éléments sélectionnés Instances.
Notez que cette classe ne s'applique qu'à Roblox Studio et n'a pas de pertinence pour les jeux.
Échantillons de code
The following code sample, when used in a plugin or the command bar, will rotate currently selected BaseParts.
local Selection = game:GetService("Selection")
for _, object in pairs(Selection:Get()) do
if object:IsA("BasePart") then
object.CFrame = object.CFrame * CFrame.Angles(0, math.pi / 2, 0)
end
end
Résumé
Propriétés
Méthodes
Évènements
S'enflamme lorsque le Instances sélectionné dans Roblox Studio change.
Propriétés
SelectionThickness
Méthodes
Add
Paramètres
Retours
Get
Renvoie un tableau d'éléments sélectionnés actuellement Instances dans Roblox Studio.
Si aucun Instances n'est sélectionné, l'arrêt retourné sera vide.Cette fonction peut être utilisée en conjonction avec l'événement Selection.SelectionChanged pour obtenir la sélection chaque fois qu'elle change.
Remarque, cette fonction ne peut être utilisée que dans Plugins ou la ligne de commande.
Pour modifier la sélection actuelle, voir Selection:Set() .
Retours
Un ensemble de sélections actuellement sélectionnées Instances .
Échantillons de code
The following code sample, when used in a plugin or the command bar, will rotate currently selected BaseParts.
local Selection = game:GetService("Selection")
for _, object in pairs(Selection:Get()) do
if object:IsA("BasePart") then
object.CFrame = object.CFrame * CFrame.Angles(0, math.pi / 2, 0)
end
end
This example prints the number of selected items whenever SelectionChanged is fired:
local selection = game:GetService("Selection")
selection.SelectionChanged:Connect(function()
print("Selection contains " .. #selection:Get() .. " items.")
end)
Remove
Paramètres
Retours
Set
Définit les objets sélectionnés actuellement dans Roblox Studio à Instances dans l'matricede données donné.
L'appel de cette fonction provoquera le lancerde l'événement Selection.SelectionChanged sauf si le nouveau ensemble de sélection est identique à la sélection précédente.
Notez que cette fonction remplace la sélection existante. Cependant, l'utilisation de Selection:Get() un Instance peut être ajoutée à la sélection existante comme ceci :
local selected = Selection:Get()table.insert(selected, object)Selection:Set(selected)
Paramètres
Un ensemble de Instances pour définir la sélection actuelle.
Retours
Échantillons de code
This code sample will select every BasePart in the workspace that is Bright red.
local Selection = game:GetService("Selection")
local newSelection = {}
for _, object in pairs(workspace:GetDescendants()) do
if object:IsA("BasePart") and object.BrickColor == BrickColor.new("Bright red") then
table.insert(newSelection, object)
end
end
Selection:Set(newSelection)
Évènements
SelectionChanged
S'enflamme lorsque le Instances sélectionné dans Roblox Studio change.
Notez que cet événement ne donne pas la nouvelle sélection. Les développeurs devront utiliser la fonction Selection:Get() pour obtenir la sélection actuelle.
Bien que cet événement puisse être utilisé en dehors des plugins et de la barre de commande, il ne s'applique qu'à la sélection dans Roblox Studio et n'a donc pas de fonctionnalité en dehors de Studio.
Pour modifier la sélection, utilisez la fonction Selection:Set().
Échantillons de code
This example prints the number of selected items whenever SelectionChanged is fired:
local selection = game:GetService("Selection")
selection.SelectionChanged:Connect(function()
print("Selection contains " .. #selection:Get() .. " items.")
end)