Engine Class
Object
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
สรุป
วิธีการ
GetPropertyChangedSignal(property: string):RBXScriptSignal |
เหตุการณ์
Changed(property: string):RBXScriptSignal |
ได้รับทอดโดย
เอกสารอ้างอิงเกี่ยวกับ API
คุณสมบัติ
className
วิธีการ
GetPropertyChangedSignal
พารามิเตอร์
ส่งค่ากลับ
ตัวอย่างโค้ด
ค่าเก่าเป็นค่าใหม่ที่มีการเปลี่ยนแปลง
local part = Instance.new("Part")
local currentColor = part.BrickColor
local function onBrickColorChanged()
local newColor = part.BrickColor
print("สีได้เปลี่ยนจาก", currentColor.Name, "เป็น", newColor.Name)
currentColor = newColor
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.BrickColor = BrickColor.new("แดงจริงๆ")
part.BrickColor = BrickColor.new("น้ำเงินจริงๆ")Changed และ GetPropertyChangedSignal
local part = Instance.new("Part")
local function onBrickColorChanged()
print("สีของฉันตอนนี้คือ " .. part.BrickColor.Name)
end
local function onChanged(property)
if property == "BrickColor" then
onBrickColorChanged()
end
end
part:GetPropertyChangedSignal("BrickColor"):Connect(onBrickColorChanged)
part.Changed:Connect(onChanged)
-- กระตุ้นการเปลี่ยนแปลงบางอย่าง (เพราะเราเชื่อมต่อสองครั้ง,
-- ทั้งสองจะทำให้มีการเรียก onBrickColorChanged สองครั้ง)
part.BrickColor = BrickColor.new("Really red")
part.BrickColor = BrickColor.new("Institutional white")IsA
isA
เหตุการณ์
Changed
พารามิเตอร์
ตัวอย่างโค้ด
เหตุการณ์เปลี่ยนแปลง
-- แสดงเหตุการณ์ Changed โดยการสร้าง Part
local part = Instance.new("Part")
part.Changed:Connect(print)
-- ประโยคนี้จะทำให้เกิด Changed ด้วย "Transparency"
part.Transparency = 0.5
-- เช่นเดียวกัน ประโยคนี้จะทำให้เกิด Changed ด้วย "Number"
part.Name = "SomePart"
-- เนื่องจากการเปลี่ยน BrickColor จะเปลี่ยนคุณสมบัติอื่นๆ
-- พร้อมกันในเวลาเดียวกัน ประโยคนี้จะทำให้เกิด Changed
-- ด้วย "BrickColor", "Color3" และ "Color3uint16".
part.BrickColor = BrickColor.Red()
-- A NumberValue holds a double-precision floating-point number
local vNumber = Instance.new("NumberValue")
vNumber.Changed:Connect(print)
-- ประโยคนี้จะทำให้เกิด Changed ด้วย 123.456 (ไม่ใช่ "Value")
vNumber.Value = 123.456
-- ประโยคนี้จะไม่ทำให้เกิด Changed
vNumber.Name = "SomeNumber"
-- A StringValue stores one string
local vString = Instance.new("StringValue")
vString.Changed:Connect(print)
-- ประโยคนี้จะทำให้เกิด Changed ด้วย "Hello" (ไม่ใช่ "Value")
vString.Value = "Hello"ตัวตรวจจับการเปลี่ยนแปลง
local object = script.Parent
local function onChanged(property)
-- รับค่าปัจจุบันของ property
local value = object[property]
-- พิมพ์ข้อความบอกว่ามีการเปลี่ยนแปลงอะไร
print(object:GetFullName() .. "." .. property .. " (" .. typeof(value) .. ") เปลี่ยนเป็น " .. tostring(value))
end
object.Changed:Connect(onChanged)
-- กระตุ้นการเปลี่ยนแปลงง่ายๆ ในวัตถุ (เพิ่มขีดต่ำในชื่อ)
object.Name = "_" .. object.Name