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 les Instances qui sont sélectionnés dans Roblox Studio.
Ce service est particulièrement utile lors du développement de Plugins, car il permet au 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 1> Class.Selection.SelectionChanged1> 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 Instances sélectionnés.
Remarquez que cette classe ne s'applique qu'à Roblox Studio et n'a aucune application aux jeux.
Échantillons de code
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
Se déclenche lorsque la Instances sélectionnée dans Roblox Studio change.
Propriétés
SelectionThickness
Méthodes
Add
Paramètres
Retours
Get
Renvoie un tableau des sélections actuellement sélectionnées Instances dans Roblox Studio.
Si aucune Instances n'est sélectionnée, l'arrêt renvoyé est 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.
Remarquez que cette fonction ne peut être utilisée que dans Plugins ou dans la ligne de commande.
Pour changer la sélection actuelle, veuillez voir Selection:Set() .
Retours
Un tableau de sélection actuelle Instances .
Échantillons de code
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
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 actuellement sélectionnés dans Roblox Studio en Instances dans le matricedonné.
L'appel de cette fonction provoquera l'événement Selection.SelectionChanged , sauf si la nouvelle sélection est identique à la sélection précédente.
Notez que cette fonction écrase la sélection existante. Cependant, en utilisant Selection:Get() et en utilisant Instance, vous pouvez ajouter une sélection comme :
local selected = Selection:Get()table.insert(selected, object)Selection:Set(selected)
Paramètres
Une table Instances pour définir la sélection actuelle.
Retours
Échantillons de code
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
Se déclenche lorsque la Instances sélectionnée dans Roblox Studio change.
Remarquez 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é à l'extérieur 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 le sélecteur, utilisez la fonction Selection:Set().
Échantillons de code
local selection = game:GetService("Selection")
selection.SelectionChanged:Connect(function()
print("Selection contains " .. #selection:Get() .. " items.")
end)