UIDragDetector
*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.
L'instance UIDragDetector facilite et encourage l'interaction avec les éléments de l'interface utilisateur 2D dans une expérience, tels que les curseurs et les spinners. Les fonctionnalités clés incluent :
Placez un UIDragDetector sous n'importe quelle instance GuiObject pour le rendre拖动able via tous les entrées sans une seule ligne de code.
Choisissez parmi plusieurs options DragStyle, définissez comment l'objet répond à la dérive via ResponseStyle et appliquez éventuellement des limites de dérive, des limites de déplacement ou des bornes de dérive.
Les scripts peuvent répondre à la manipulation des objets glissant pour conduire des réponses logiques, telles que l'ajustement des paramètres.
UIDragDetectors fonctionnent dans Studio tant que vous n'êtes pas n'utiliser les outils sélectionner , 0>déplacer0>, 3>échelle3>, ou 6>rotate6> les outils, ou certains plugins ou Studio's UIDragDetectors9> éditeurs de outils.
Résumé
Propriétés
Définit l'icône de curseur pour s'afficher lorsque la souris est activée sur le parent de cette UIDragDetector .
Détermine le comportement de limite de l'objet de l'interface utilisateur glissée lorsque le détecteur est configureravec BoundingUI.
Instances dont la zone de définition des limites définit les limites de déplacement pour le parent GuiObject .
Définit l'icône de curseur pour s'afficher lorsque la souris est positionnée sur le parent de cette UIDragDetector .
La barre de défilement pour l'instance UIDragDetector lorsque DragStyle est réglé sur Enum.UIDragDetectorDragStyle.TranslateLine .
Définit le paradigme qui définit la gravité des entrées/sorties d'une fonction de拖 personnalisée.
La rotation effectuée par le courant de déplacement.
Définit le paradigme qui définit l'espace des entrées/sorties d'une fonction de拖 personnalisée.
Le paradigme utilisé pour générer la motion proposée.
La traduction effectuée par le courant de déplacement expressé dans une valeur UDim2 actuelle.
Whether the UIDragDetector répond à l'entrée de l'utilisateur.
Avec MinDragAngle, empêche les tentatives du détecteur de générer une rotation.
Avec MinDragTranslation, empêche les tentatives du détecteur de générer des mouvements linéaires/planeaires.
Avec MaxDragAngle, empêche les tentatives du détecteur de générer une rotation.
Avec MaxDragTranslation, empêche les tentatives du détecteur de générer des mouvements linéaires/planeaires.
Une instance GuiObject dont l'espace local et la position centrale sont l'espace de référence et l'origine pour le détecteur.
Le paradigme utilisé pour définir la réponse à la motion proposée.
Vitesse de déplacement maximale pour la traduction.
Maximum d'angle par seconde que le UIDragDetector peut tourner à.
Enum.UIDragSpeedAxisMapping valeur qui détermine la vitesse de X / Y déplacement des dimensions.
Méthodes
Ajoute une fonction pour modifier ou restreindre la motion proposée.
Retourne la position de référence UDim2 de la position de référence de la poignée actuelle.
Renvoie la référence de rotation de l'élément de référence de la capture actuelle.
Transmet une fonction à utiliser si et seulement si DragStyle est défini sur Enum.UIDragDetectorDragStyle.Scriptable.
Évènements
Se déclenche lorsqu'un utilisateur continue de faire glisser l'élément de l'interface utilisateur après que DragStart a été initialisé.
Feu quand un utilisateur arrête de faire glisser l'élément UI.
Démarre quand un utilisateur commence à faire glisser l'élément UI.
Propriétés
ActivatedCursorIcon
Définit l'icône de curseur pour s'afficher lorsque la souris est activée sur le parent de cette UIDragDetector . Si cette propriété est vide, le détecteur utilisera l'icône par défaut.
Pour modifier l'icône de curseur activée, définissez cette propriété sur l'ID de la ressource de l'image que vous souhaitez utiliser.
BoundingBehavior
Détermine le comportement de limite de l'objet de l'interface utilisateur glissée lorsque le détecteur est configurer. Voir BoundingUI pour plus de détails sur le comportement de chaque paramètre.
BoundingUI
Lorsqu'il est configurer, l'instance UIDragDetector ne permettra pas aux limites du parent GuiObject d'être拖出 les limites de l'instance BoundingUI .
Notez que si une partie du parent GuiObject est en dehors des limites de BoundingUI , la position d'entrée initiale au moment de la saisie et sa position relative pendant la saisie seront utilisées pour la détection des limites jusqu'à ce que l'objet entier soit dans les limites, après quoi l'objet sera restreint dans les limites.
CursorIcon
Définit l'icône de curseur pour s'afficher lorsque la souris est positionnée sur le parent de cette UIDragDetector . Si cette propriété est vide, le détecteur utilisera l'icône par défaut.
Pour changer l'icône de curseur, définissez cette propriété sur l'ID de la ressource de l'image que vous souhaitez utiliser.
DragAxis
Vector2 valeur qui définit l'axe de déplacement pour l'objet拖动 lorsque DragStyle est défini sur Enum.UIDragDetectorDragStyle.TranslateLine . L'axe est dé
DragRelativity
S'applique uniquement si une fonction de拖 personnalisée est enregistrée via SetDragStyleFunction() ou AddConstraintFunction() . Définit le paradigme qui définit les entrées/sorties de la fonction enregistrée.
Par exemple
DragRotation
La rotation effectuée par le courant de rotation. Cette valeur est définie en degrés par rapport à l'espace local de l'UIDragDetector à moins que ReferenceUIInstance n'est définie, dans ce cas la rotation est définie dans l'espace local de cette instance et de son axe positif X.
Cette propriété peut être modifiée pendant qu'il n'y a pas de faisceau actif pour faire pivoter l'objet tiré.
DragSpace
S'applique uniquement si une fonction de拖 personnalisée est enregistrée via SetDragStyleFunction() ou AddConstraintFunction() . Définit le paradigme qui définit l'espace des entrées/sorties de la fonction enregistrée.
Par exemple, si le parent détecteur GuiObject est un enfant d'un parent GuiObject qui tourne :
Le retour d'une valeur UDim2.fromOffset(1, 0) d'une fonction enregistrée avec cette propriété définie sur Enum.UIDragDetectorDragSpace.Parent déplacerait le parent du détecteur GuiObject à droite par 1 pixel dans l'espace local affecté par la rotation de son parent.
Le retour d'une UDim2.fromOffset(1, 0) d'une fonction enregistrée avec ce paramètre défini sur Enum.UIDragDetectorDragSpace.LayerCollector déplacerait le parent du détecteur GuiObject à droite de 1 pixel dans l'espace du 1> Class.LayerCollector1> .
DragStyle
Le paradigme utilisé pour générer une motion proposée, donné un ensemble de vécteurs de position d'entrée. Voir Enum.UIDragDetectorDragStyle pour les options.
DragUDim2
La traduction est effectuée par le courant de déplacement actuel exprimé dans une valeur UDim2. La traduction est effectuée par le biais de Offset ou Scale vale
Cette propriété peut être modifiée pendant qu'il n'y a pas de traine active pour déplacer l'objet拖.
Enabled
Si true, le UIDragDetector répond à l'entrée de l'utilisateur; si false, il ne le fait pas.
MaxDragAngle
Si cette propriété est supérieure à MinDragAngle , la rotation sera ajustée dans la plage de MinDragAngle et MaxDragAngle. Les valeurs positives empêchent la rotation vers la droite, tandis que les valeurs négatives empêchent la rotation vers la gauche.
Ce n'est pas une contrainte ; il empêche simplement les tentatives du détecteur de générer des mouvements pour rester dans les limites. Voir AddConstraintFunction() pour ajouter une contrainte personnalisée à un dérive.
Only relevant if DragStyle is Enum.UIDragDetectorDragStyle.Rotate .
MaxDragTranslation
Si les valeurs correspondantes Offset et/ou Scale sont supérieures à celles de MinDragTranslation dans toutes les dimensions, la traduction linéaire/plane sera a
Ce n'est pas une contrainte ; il empêche simplement les tentatives du détecteur de générer des mouvements pour rester dans les limites. Voir AddConstraintFunction() pour ajouter une contrainte personnalisée à un dérive.
N'est pertinent que si DragStyle est Enum.UIDragDetectorDragStyle.TranslateLine ou Enum.UIDragDetectorDragStyle.TranslatePlane.
MinDragAngle
Si cette propriété est inférieure à MaxDragAngle , la rotation sera ajustée dans la plage de MinDragAngle et MaxDragAngle. Les valeurs positives empêchent la rotation vers la droite, tandis que les valeurs négatives empêchent la rotation vers la gauche.
Ce n'est pas une contrainte ; il empêche simplement les tentatives du détecteur de générer des mouvements pour rester dans les limites. Voir AddConstraintFunction() pour ajouter une contrainte personnalisée à un dérive.
Only relevant if DragStyle is Enum.UIDragDetectorDragStyle.Rotate .
MinDragTranslation
Si les valeurs correspondantes Offset et/ou Scale sont inférieures à celles de MaxDragTranslation dans toutes les dimensions, la traduction linéaire/plane sera a
Ce n'est pas une contrainte ; il empêche simplement les tentatives du détecteur de générer des mouvements pour rester dans les limites. Voir AddConstraintFunction() pour ajouter une contrainte personnalisée à un dérive.
N'est pertinent que si DragStyle est Enum.UIDragDetectorDragStyle.TranslateLine ou Enum.UIDragDetectorDragStyle.TranslatePlane.
ReferenceUIInstance
Une instance GuiObject dont l'espace local et la position centrale sont l'espace de référence et l'origine pour le détecteur. En configurant cette position, vous affectez des propriétés telles que DragUDim2 , DragRotation et le comportement de
ResponseStyle
Une fois que la proposition de mouvement a été calculée et potentiellement restreinte, ce paradigme est utilisé pour déterminer comment déplacer (ou ne pas déplacer) le GuiObject affecté par le UIDragDetector . Voir Enum.UIDragDetectorResponseStyle pour les options.
SelectionModeDragSpeed
Définit la vitesse de déplacement maximum pour la traduction en combinaison de Scale et Offset du premier ancêtre ScreenGui ou 1> Class.SurfaceGui1>
SelectionModeRotateSpeed
Définit l'angle maximum par seconde auquel le UIDragDetector peut tourner. Cette valeur doit être positive et n'importe quelle valeur en dessous de 0 sera ajustée à 0.
UIDragSpeedAxisMapping
Enum.UIDragSpeedAxisMapping valeur qui détermine la vitesse de X / Y déplacement des dimensions.
Méthodes
AddConstraintFunction
Ajoute une fonction pour modifier ou restreindre la motion proposée. La fonction prend un entrée UDim2 (position) et flotte (Rotation) de la motion proposée et renvoie un retour Datatype.UDim2 et flotte de la mouvement modifiée ou non modifiée. Vous pouvez ajouter plusieurs fonctions qui seront appelées dans l'ordre par
L'entrée est expressée dans l'espace défini par la propriété DragSpace, soit en tant que dé Delta ou la position/Rotation souhaitée finale basée sur la propriété DragRelativity, soit en tant que dé de
Pour supprimer une fonction de contrôle ajoutée, appelez Disconnect() sur l'objet de connexion renvoyé.
Paramètres
L'ordre de priorité pour les fonctions ajoutées via cette méthode. Les valeurs plus élevées prennent la priorité sur les valeurs plus basses.
Retours
Utilisez cet objet de connexion pour supprimer la fonction de contrôle.
GetReferencePosition
Lorsque aucun ReferenceUIInstance n'est configurer, cette fonction renvoie la position UDim2 de l'objet parent immédiat de l'objet déplacé GuiObject (si l'un existe), ou la position 2>Datatype.UDim22> de l'objet déplacé.
Lorsqu'un ReferenceUIInstance est configurer, cette fonction renvoie la position UDim2 de cette instance de référence.
Retours
GetReferenceRotation
Lorsque aucun ReferenceUIInstance n'est configurer, cette fonction renvoie la rotation du parent immédiat de l'objet拖动 GuiObject (si un tel parent existe), ou la rotation de l'objet拖动.
Lorsqu'un ReferenceUIInstance est configurer, cette fonction renvoie la rotation de cette instance.
Retours
Rotation de l'élément de référence de la capture actuelle.
SetDragStyleFunction
Passe une fonction à utiliser si et seulement si DragStyle est défini sur Enum.UI
Si la fonction renvoie nil, l'objet ne sera pas déplacé. Ceci est utile si le script n'a pas encore collecté toutes les informations dont il a besoin pour donner la bonne réponse, ou dans des cas temporaires où vous souhaitez que l'objet reste où il est.
Paramètres
Fonction pour surveiller les signaux DragContinue. Cette fonction reçoit la position d'entrée de l'espace d'affichage du signal et renvoie un UDim2 et flotte contenant la position de mouvement souhaitée dans l'espace souhaité et la gravité. Si cette fonction renvoie nil, l'objet ne sera pas déplacé.
Retours
Évènements
DragContinue
Se déclenche lorsqu'un utilisateur continue de faire glisser l'élément de l'interface utilisateur après que DragStart a été initialisé.
Paramètres
DragEnd
Feu quand un utilisateur arrête de faire glisser l'élément UI.