UIDragDetector
*เนื้อหานี้แปลโดยใช้ AI (เวอร์ชัน Beta) และอาจมีข้อผิดพลาด หากต้องการดูหน้านี้เป็นภาษาอังกฤษ ให้คลิกที่นี่
UIDragDetector ตัวอย่างที่เปิดให้ใช้งานในประสบการณ์ รวมถึงส่วนประกอบของ 2D user interface ในประสบการณ์เช่นเลื่อนและหมุน คุณสมบัติหลักในการใช้งานรวมถึง:
วาง Class.GuiObject ที่มีรหัสอยู่ภายใต้ทุก Class.GuiObject ที่มีรหัส เพื่อให้มันสามารถลากได้ผ่านทุกการป้อนข้อมูลโดยไม่มีเส้นโค้ดเดียว
เลือกจากตัวเลือกหลาย DragStyle ตัวเลือก, กำหนดวิธีการที่วัตถุตอบสนองต่อการเคลื่อนไหวโดย ResponseStyle และใช้ตัวจับตำแหน่ง, ขีดจำกัดการเคลื่อนไหว
สคริปต์สามารถตอบสนองต่อการโดนย้ายวัตถุเพื่อขับเคลื่อนการตอบสนองของล็อกิก เช่นการปรับแต่งการตั้งค่า
UIragDetectors ทำงานใน Studio นานเท่าที่คุณไม่ใช้ เลือก ใช้ ย้าย หรือ 0>เคลื่อนย้าย0> หรือ 3>ขนาด3> หรือ UIDragDetectors6> เคร
สรุป
คุณสมบัติ
ตั้งไอคอนเมาส์ให้เปิดเมื่อเมาส์ถูกเปิดบนพ่อของ UIDragDetector นี้
กำหนดพฤติกรณ์การจำกัดของวัตถุ UI ที่ลากเมื่อตัวตรวจจับของเรากำหนดไว้ BoundingUI
ตัวอินสแตนซ์ที่มีพื้นที่ชนะสำหรับพ่อ GuiObject
ตั้งไอคอนเมาส์ให้เป็นเมื่อเมาส์อยู่เหนือพ่อของ UIDragDetector นี้
ลำดับเห�ียวสำหรับตัวอย่าง UIDragDetector เมื่อ DragStyle ตั้งค่าไว้ที่ Enum.UIDragDetectorDragStyle.TranslateLine
ตั้งค่าระดับที่กำหนดความสัมพันธ์ของการประมวลผลของการนำเสนอข้อมูล/การส่งออกจากคุณสมบัติผสาน
การหมุนที่ดำเนินการโดยลากปัจจุบัน
ตั้งค่าร่างกายที่กำหนดพื้นที่ของการป้อน/ส่งข้อมูลจากการลากจากการปรับแต่ง
ระบบจัดการที่ใช้สร้างการเคลื่อนไหวที่เสนอ
การแปลที่ดำเนินการโดยลากปัจจุบันที่แสดงในค่า UDim2
ว่า UIDragDetector ตอบสนองต่อการป้อนข้อมูลของผู้ใช้
พร้อมกับ MinDragAngle ป้องกันการพยายามของเครื่องตรวจจับที่จะสร้างการเคลื่อนที่หมุน
พร้อมกับ MinDragTranslation ป้องกันการพยายามของเครื่องตรวจจับที่จะสร้างการเคลื่อนไหวแบบเส้น/แบน
พร้อมกับ MaxDragAngle ป้องกันการพยายามของเครื่องตรวจจับที่จะสร้างการเคลื่อนที่ในแนวตรง.
พร้อมกับ MaxDragTranslation ป้องกันการพยายามของเครื่องตรวจจับเพื่อสร้างการเคลื่อนไหวแบบเส้น/แบบพานามิเตอร์
ตัวอย่าง GuiObject ที่มีพื้นที่และตำแหน่งกลางของพื้นที่เฉพาะเป็นพื้นที่อ้างอิงและตำแหน่งกลางของเครื่องตรวจจับ
รูปแบบที่ใช้ในการอธิบายการตอบสนองต่อการเคลื่อนไหวที่เสนอ
ความเร็วการลากสูงสุดสำหรับการแปล
มุมสูงสุดต่อวินาที UIDragDetector สามารถหมุนได้
Enum.UIDragSpeedAxisMapping มูลค่าที่กำหนดความเร็วในการลากของ X / Y มิติ
วิธีการ
เพิ่มฟังก์ชันเพื่อปรับแต่งหรือจำกัดการเคลื่อนไหวที่เสนอ
กลับตำแหน่งที่อยู่ของ referral ของค่ายืนยันปัจจุบัน UDim2
กลับส่วนหมุนอ้างอิงของส่วนหมุนอ้างอิงปัจจุบัน
ส่งค่าฟังก์ชันที่จะใช้เฉพาะถ้าและเท่านั้นถ้า DragStyle ติดตั้งเป็น Enum.UIDragDetectorDragStyle.Scriptable
อีเวนต์
จะเริ่มไฟรีเมื่อผู้ใช้ดึงส่วนหนึ่งของ UI หลังจากที่ DragStart ได้รับการเริ่มต้น
เกิดขึ้นเมื่อผู้ใช้หยุดลากส่วนหนึ่งของ UI
เกิดขึ้นเมื่อผู้ใช้เริ่มลากส่วนหนึ่งของ UI
คุณสมบัติ
ActivatedCursorIcon
ตั้งไอคอนเมาส์ให้เป็นแสดงเมื่อเปิดเมาส์เหนือพ่อของตัวนี้ UIDragDetector หากปล่อยไว้โมฆะไอคอนเมาส์จะใช้ไอคอนเริ่มต้น
เพื่อเปลี่ยนไอคอนเมาส์ที่เปิดใช้งาน ให้ตั้งค่าสมบัติรหัสของรูปภาพที่คุณต้องการใช้
BoundingBehavior
กำหนดพฤติกรณ์การจำกัดของวัตถุ UI ที่ลากเมื่อตัวระบุของเรดเดอร์กำหนดไว้ ดู BoundingUI สำหรับรายละเอียดเกี่ยวกับพฤติกรณ์ของแต่ละการตั้งค่า
BoundingUI
ตั้งค่าUIDragDetector ตัวอย่างจะไม่สามารถดึงขีดจำกัดของพ่อ GuiObject ออกจากขีดจำกัดของ BoundingUI อินสแตนซ์
หมายเหตุว่าหากส่วนหนึ่งของผู้ปกครอง GuiObject อยู่นอกขอบเขต BoundingUI จะใช้ตำแหน่งการป้อนข้อมูลเริ่มต้นในขั้นตอนการลากและตำแหน่งของมันในขั้นตอนกา
CursorIcon
ตั้งค่าไอคอนเมาส์ที่แสดงเมื่อเมาส์อยู่เหนือปุ่มหลักของนี้ UIDragDetector หากสถานที่นี้ว่างเปล่า เครื่องมือนี้จะใช้ไอคอนเริ่มต้น
เพื่อเปลี่ยนไอคอนเมาส์ให้เป็นรหัสสมบัติของรูปภาพที่คุณต้องการใช้
DragRelativity
ใช้ได้เฉพาะถ้าคุณสมบัติดึงสร้างขึ้นผ่าน SetDragStyleFunction() หรือ AddConstraintFunction() ตั้งแค่นี้ก็จะกำหนดรูปแบบของคุณสมบัติที่ใช้ในการใช้งาน
ต
DragRotation
การหมุนที่ดำเนินการโดยลากปัจจุบัน มีค่านี้ได้รับการกำหนดในองศาเมื่อเปรียบเทียบกับพื้นที่ในท้องถิ่นของ UIDragDetector ยกเว้นว่า Class.
คุณสมบัตินี้สามารถเปลี่ยนแปลงได้ในขณะที่ไม่มีลากเหยียวเพื่อหมุนวัตถุลาก
DragSpace
ใช้ได้เฉพาะถ้าคุณสมบัติดึงเฉพาะได้รับการลงทะเบียนผ่าน SetDragStyleFunction() หรือ AddConstraintFunction() ตั้งแต่นั้นก็จะติดตั้งร่างกายของฟังก์ชันที
เช่นเดียวกับเมื่อพี่น้องของเครื่องตรวจจับ GuiObject เป็นลูกของพ่อ GuiObject ที่หมุน:
การกลับสู่ฟังก์ชันที่ลงทะเบียนด้วยค่านี้ตั้งอยู่ใน UDim2.fromOffset(1, 0) จากฟังก์ชันที่ลงทะเบียนจะย้ายพ่อของเดียว Enum.UIDragDetectorDragSpace.Parent ไปที่ด้านข
การกลับสู่ค่า UDim2.fromOffset(1, 0) จากระเบียบัญชีที่ลงทะเบียนมีค่านี้ตั้งไว้ใน Enum.UIDragDetectorDragSpace.LayerCollector จะย้ายพ่อของเดียวกันในพื้นที่ของ
DragStyle
ร่างกายที่ใช้ในการสร้างการเคลื่อนไหวที่เสนอได้รับตัวแปรตำแหน่งการป้อนสตรีม ดู Enum.UIDragDetectorDragStyle สําหรับตัวเลือก
DragUDim2
การแปลที่ดำเนินการโดยค่าดรากที่แสดงใน UDim2 มีการแปลผ่าน Offset หรื
คุณสมบัตินี้สามารถเปลี่ยนแปลงได้ในขณะที่ไม่มีลากเพื่อย้ายวัตถุที่ลาก
MaxDragAngle
หากค่านี้ใหญ่กว่า MinDragAngle การหมุนจะถูกกระทืบภายในระยะ MinDragAngle และ MaxDragAngle สิ่งที่เป
นี่ไม่ใช่ข้อจํากัด; มันเพียงแค่ป้องกันการพยายามของเครื่องตรวจจับเพื่อให้อยู่ภายใต้ขีดจำกัด ดู AddConstraintFunction() เพื่อเพิ่มข้อจํากัดเฉพาะกับการลาก
เฉพาะเมื่อ DragStyle เป็น Enum.UIDragDetectorDragStyle.Rotate
MaxDragTranslation
หากค่า Offset และ/หรือ Scale ของค่า MinDragTranslation ในทุกมิต
นี่ไม่ใช่ข้อจํากัด; มันเพียงแค่ป้องกันการพยายามของเครื่องตรวจจับเพื่อให้อยู่ภายใต้ขีดจำกัด ดู AddConstraintFunction() เพื่อเพิ่มข้อจํากัดเฉพาะกับการลาก
เฉพาะเฉพาะถ้า DragStyle เป็น Enum.UIDragDetectorDragStyle.TranslateLine หรือ Enum.UIDragDetectorDragStyle.TranslatePlane เท่านั้น
MinDragAngle
หากค่านี้เล็กกว่า MaxDragAngle การหมุนจะถูกกดอยู่ภายในขอบเขตของ MinDragAngle และ MaxDragAngle โดยม
นี่ไม่ใช่ข้อจํากัด; มันเพียงแค่ป้องกันการพยายามของเครื่องตรวจจับเพื่อให้อยู่ภายใต้ขีดจำกัด ดู AddConstraintFunction() เพื่อเพิ่มข้อจํากัดเฉพาะกับการลาก
เฉพาะเมื่อ DragStyle เป็น Enum.UIDragDetectorDragStyle.Rotate
MinDragTranslation
หากค่า Offset และ/หรือ Scale ของคุณน้อยกว่าคุณสมบัติของ Class.UIDragDetector.
นี่ไม่ใช่ข้อจํากัด; มันเพียงแค่ป้องกันการพยายามของเครื่องตรวจจับเพื่อให้อยู่ภายใต้ขีดจำกัด ดู AddConstraintFunction() เพื่อเพิ่มข้อจํากัดเฉพาะกับการลาก
เฉพาะเฉพาะถ้า DragStyle เป็น Enum.UIDragDetectorDragStyle.TranslateLine หรือ Enum.UIDragDetectorDragStyle.TranslatePlane เท่านั้น
ReferenceUIInstance
ตัวอย่าง GuiObject ที่มีพื้นที่และตำแหน่งกลางเป็นพื้นที่อ้างอิงสำหรับเครื่องตรวจจับ การตั้งค่าสถานที่อ้างอิงนี้จะส
ResponseStyle
เมื่อคำนวณความเคลื่อนไหวที่เสนอแนะแล้วและอาจจะจำกัดความเคลื่อนไหวได้ ประการนี้จึงใช้ในการกำหนดวิธีการย้าย (หรือไม่ย้าย) GuiObject ที่ได้รับผลกระทบโ
SelectionModeRotateSpeed
กำหนดมุมสูงสุดต่อวินาทีที่ UIDragDetector สามารถหมุนได้ ค่านี้ต้องเป็นบวกและค่าใด ๆ ด้านล่าง 0 จะถูกกดไปยัง 0
วิธีการ
AddConstraintFunction
เพิ่มฟังก์ชันเพื่อปรับแต่งหรือจำกัดการเคลื่อนที่เสนอไว้ ฟังก์ชันใช้ข้อมูล UDim2 (ตําแหน่ง) และลอยตัว
การป้อนข้อมูลจะถูกแสดงในพื้นที่ที่กำหนดโดยสมบัติของ DragSpace โดยเป็นดาต้าหรือ
เพื่อลบคุณสมบัติที่เพิ่มเข้ามา โปรดเรียก Disconnect() ในตัวเอกสารการเชื่อมต่อที่กลับมา
พารามิเตอร์
ลำดับความสามารถที่มีความสำคัญสูงสุดสำหรับการเพิ่มผ่านวิธีนี้ มีค่ามากกว่าลำดับความสามารถที่ต่ำกว่า
การใช้งานสำหรับการปรับแต่งหรือจำกัดการเคลื่อนที่ที่เสนอไว้ การใช้งานนี้รับข้อมูล Datatype.UD
ส่งค่ากลับ
ใช้วัตถุการเชื่อมต่อนี้เพื่อลบคุณสมบัติ
GetReferencePosition
เมื่อไม่มี ReferenceUIInstance ตั้งค่าฟังก์ชันนี้จะกลับค่า UDim2 ตำแหน่งของบรรพบุรุษโดยตรงของวัตถุที่ลากไปยัง Class
ตั้งค่าReferenceUIInstance ไว้ ฟังก์ชันนี้จะกลับค่าตำแหน่ง UDim2 อินสแตนซ์
ส่งค่ากลับ
GetReferenceRotation
เมื่อไม่มี ReferenceUIInstance ตั้งค่าฟังก์ชันนี้จะส่งกลับค่าการหมุนของวัตถุลากจากพ่อของวัตถุลากทันที GuiObject (ถ้ามี) หรือค่าการหมุนของวัตถุลาก (ถ้ามี)
ตั้งค่าReferenceUIInstance ไว้ อินสแตนซ์
ส่งค่ากลับ
การหมุนของส่วนอ้างอิงของลากปัจจุบัน
SetDragStyleFunction
ส่งค่าฟังก์ชันที่จะใช้เฉพาะถ้าและเท่านั้นถ้า Class.UI
หากคุณสมบัติกลับมาเป็น nil ไม่ได้เคลื่อนย้ายไปยังตำแหน่งเดิม หากสคริปต์ยังไม่ได้รวบรวมข้อมูลทั้งหมดที่ต้องให้คำตอบที่ถูกต้อง หรือในกรณีที่คุณต้องการให้ตัวอักษรอยู่ที่เดิ
พารามิเตอร์
ระบบสำหรับการตรวจสอบ DragContinue สัญญาณ รับตำแหน่งพื้นที่หน้าจอของ singal และกลับค่า UDim2 และลอยตัวที่ต้องการในพื้นที่
ส่งค่ากลับ
อีเวนต์
DragContinue
จะเริ่มไฟรีเมื่อผู้ใช้ดึงส่วนหนึ่งของ UI หลังจากที่ DragStart ได้รับการเริ่มต้น
พารามิเตอร์
DragEnd
เกิดขึ้นเมื่อผู้ใช้หยุดลากส่วนหนึ่งของ UI