Classe de moteur
Object
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
Résumé
Méthodes
GetPropertyChangedSignal(property: string):RBXScriptSignal |
Événements
Changed(property: string):RBXScriptSignal |
Hérité par
Référence API
Propriétés
className
Méthodes
GetPropertyChangedSignal
Paramètres
Retours
Échantillons de code
Valeurs Anciennes à Nouvelles avec Changé
local part = Instance.new("Part")
local currentColor = part.BrickColor
local function onBrickColorChanged()
local newColor = part.BrickColor
print("La couleur a changé de", currentColor.Name, "à", newColor.Name)
currentColor = newColor
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.BrickColor = BrickColor.new("Rouge vraiment")
part.BrickColor = BrickColor.new("Bleu vraiment")Changed et GetPropertyChangedSignal
local part = Instance.new("Part")
local function onBrickColorChanged()
print("Ma couleur est maintenant " .. part.BrickColor.Name)
end
local function onChanged(property)
if property == "BrickColor" then
onBrickColorChanged()
end
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.Changed:Connect(onChanged)
-- Déclenchez quelques changements (parce que nous avons connecté deux fois,
-- les deux déclencheront deux appels à onBrickColorChanged)
part.BrickColor = BrickColor.new("Vraiment rouge")
part.BrickColor = BrickColor.new("Blanc institutionnel")IsA
isA
Événements
Changed
Paramètres
Échantillons de code
Événement Changé
-- Démontrer l'événement Changed en créant une Part
local part = Instance.new("Part")
part.Changed:Connect(print)
-- Cela déclenche Changed avec "Transparency"
part.Transparency = 0.5
-- De même, cela déclenche Changed avec "Number"
part.Name = "SomePart"
-- Puisque changer BrickColor changera également d'autres
-- propriétés en même temps, cette ligne déclenche Changed
-- avec "BrickColor", "Color3" et "Color3uint16".
part.BrickColor = BrickColor.Red()
-- Un NumberValue contient un nombre à virgule flottante double précision
local vNumber = Instance.new("NumberValue")
vNumber.Changed:Connect(print)
-- Cela déclenche Changed avec 123.456 (pas "Value")
vNumber.Value = 123.456
-- Cela ne déclenche pas Changed
vNumber.Name = "SomeNumber"
-- Un StringValue stocke une chaîne de caractères
local vString = Instance.new("StringValue")
vString.Changed:Connect(print)
-- Cela déclenche Changed avec "Hello" (pas "Value")
vString.Value = "Hello"Détecteur de Changement
local object = script.Parent
local function onChanged(property)
-- Obtenir la valeur actuelle de la propriété
local value = object[property]
-- Imprimer un message disant ce qui a changé
print(object:GetFullName() .. "." .. property .. " (" .. typeof(value) .. ") a changé en " .. tostring(value))
end
object.Changed:Connect(onChanged)
-- Déclencher un changement simple dans l'objet (ajouter un underscore au nom)
object.Name = "_" .. object.Name