StyleRule
*Dieser Inhalt wurde mit KI (Beta) übersetzt und kann Fehler enthalten. Um diese Seite auf Englisch zu sehen, klicke hier.
Definiert Stileigenschaften, die Eigenschaften auf den Instanzen überschreiben, die durch die Eigenschaft Selector betroffen sind.
Zusammenfassung
Eigenschaften
Eine Zahl, die festlegt, wie sich die Eigenschaften von der StyleRule auf die gleichen Eigenschaften in anderen StyleRules beziehen.Höhere Prioritätswerte haben Vorrang vor niedrigeren.
Eine Zeichenkette, die angibt, auf welche Instanzen sich die StyleRule beziehen soll.
Eine nur lesbare Zeichenkette, die Fehler aus der Selector Eigenschaft anzeigt.
Methoden
Gibt ein Wörterbuch von Schlüssel-Wert-Paaren zurück, die die Eigenschaften der StyleRule beschreiben.
Gibt den Wert einer bestimmten Eigenschaft in der StyleRule zurück.
Ermöglicht es dir, mehrere Eigenschaften des StyleRule auf einmal zu deklarieren und zu setzen.
Gibt eine Reihe von assoziierten StyleRules zurück.
Fügt einen neuen StyleRule in das Array der Regeln ein.
Ähnlich wie InsertStyleRule() aber lässt dich mehrere StyleRules gleichzeitig deklarieren und festlegen.
Ereignisse
Ereignisse von StyleBase übernommenFeuert, wenn eines oder mehrere StyleRules explizit auf dem verbundenen StyleSheet oder StyleRule geändert werden.
Eigenschaften
Priority
Eine Zahl, die festlegt, wie sich die Eigenschaften von der StyleRule auf die gleichen Eigenschaften in anderen StyleRules beziehen.Höhere Prioritätswerte haben Vorrang vor niedrigeren.Zum Beispiel, wenn ein StyleRule mit einer Priorität von 10 ein AnchorPoint 属性 von
Selector
Eine Zeichenkette, die angibt, auf welche Instanzen sich die StyleRule beziehen soll.Dies kann eine Mischung aus Selektoren und Kombinatoren sein, um Merkmale wie den Klassennamen, den Instanznamen und die Hierarchiebeziehungen zu passen.
Zum Beispiel bedeutet effektiv, dass die Stilregel jedes überschreibt, das ein Kind einer mit gekennzeichneten Instanz ist ( ), und und sind im Zustand ( ).
Auswahl器
<th>Beschreibung</th><th>Beispiele</th></tr></thead><tbody><tr><td><code>[klasse]</code></td><td>Matches Instanzen einer <code>Class.GuiObject</code> oder <code>Class.UIComponent</code> Klasse.</td><td><code>"Frame"</code><code>"Bildschaltfläche"</code><code>"UIEcke"</code></td></tr><tr><td><code>.[tag]</code></td><td>Matches Instanzen <a href="/studio/properties#instance-tags">markiert</a> mit einem <code>Class.CollectionService</code> Tag.</td><td><code>".Container"</code><code>".BlueOnHover"</code></td></tr><tr><td><code>#name</code></td><td>Matche Instanzen einer bestimmten <code>Class.Instance.Name</code>.</td><td><code>"#ModalFrame"</code><code>"#SchließenButton"</code></td></tr><tr><td><code>[状态]</code></td><td>Matche Instanzen, die derzeit in einem <code>Enum.GuiState</code> sind.</td><td><code>":Schweben"</code></td></tr></tbody>
Auswahl |
---|
Kombinatoren
<th>Beschreibung</th><th>Beispiele</th></tr></thead><tbody><tr><td><code>></code></td><td>Matche Instanzen, die <b>direkte Kinder</b> des vorherigen Filtermatchs sind.</td><td width="40%"><code>„Frame > .Inventar“</code></td></tr><tr><td><code>>></code></td><td>Matche Instanzen, die <b>Nachkommen</b> der vorherigen Filtermatches sind.</td><td><code>„Bild按钮 >> .BlueOnHover"</code></td></tr><tr><td><code>,</code></td><td>Gibt eine Liste mehrerer unabhängiger Selektoren für die Stilregel an.</td><td><code>„Frame.TagA, TextLabel.TagA“</code></td></tr><tr><td><code>::</code></td><td>Erstellt eine Phantom-<code>Class.UIComponent</code>-Instanz unter den vorherigen Filter-Matches und wendet die Eigenschaften der Stilregel auf sie an.</td><td><code>„Frame::UICorner“</code></td></tr></tbody>
Kombinierer |
---|
Code-Beispiele
The following example shows how to define a class selector which targets all TextButton instances and styles them with blue background and light grey text. To test, paste the code into a LocalScript which is a child of a ScreenGui located inside the StarterGui container.
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local screenGui = script.Parent
local coreSheet = Instance.new("StyleSheet")
coreSheet.Parent = ReplicatedStorage
local styleLink = Instance.new("StyleLink")
styleLink.StyleSheet = coreSheet
styleLink.Parent = screenGui
local rule = Instance.new("StyleRule")
rule.Parent = coreSheet
-- Class selector
rule.Selector = "TextButton"
-- Set rule properties
rule:SetProperties({
["BackgroundColor3"] = Color3.fromHex("335FFF"),
["TextColor3"] = Color3.fromHex("E1E1E1"),
["Size"] = UDim2.new(0.15, 0, 0, 40),
["BorderSizePixel"] = 0
})
local button = Instance.new("TextButton")
button.Text = "Main Menu"
button.Parent = screenGui
The following example shows how to define a tag selector which utilizes tags applied through CollectionService to target a TextButton tagged with ButtonPrimary. To test, paste the code into a LocalScript which is a child of a ScreenGui located inside the StarterGui container.
local CollectionService = game:GetService("CollectionService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local screenGui = script.Parent
local coreSheet = Instance.new("StyleSheet")
coreSheet.Parent = ReplicatedStorage
local styleLink = Instance.new("StyleLink")
styleLink.StyleSheet = coreSheet
styleLink.Parent = screenGui
local rule = Instance.new("StyleRule")
rule.Parent = coreSheet
-- Tag selector
rule.Selector = ".ButtonPrimary"
-- Set rule properties
rule:SetProperties({
["BackgroundColor3"] = Color3.fromHex("FF0099"),
["TextColor3"] = Color3.fromHex("E1E1E1"),
["Size"] = UDim2.new(0.15, 0, 0, 40),
["BorderSizePixel"] = 0
})
local button = Instance.new("TextButton")
button.Text = "Main Menu"
button.Parent = screenGui
-- Apply tag to button
CollectionService:AddTag(button, "ButtonPrimary")
The following example shows how to define a UI modifier selector which applies a phantom UICorner instance to a Frame tagged with RoundedCorner20. To test, paste the code into a LocalScript which is a child of a ScreenGui located inside the StarterGui container.
local CollectionService = game:GetService("CollectionService")
local ReplicatedStorage = game:GetService("ReplicatedStorage")
local screenGui = script.Parent
local coreSheet = Instance.new("StyleSheet")
coreSheet.Parent = ReplicatedStorage
local styleLink = Instance.new("StyleLink")
styleLink.StyleSheet = coreSheet
styleLink.Parent = screenGui
local rule = Instance.new("StyleRule")
rule.Parent = coreSheet
-- UI component selector
rule.Selector = "Frame.RoundedCorner20::UICorner"
-- Set rule property
rule:SetProperty("CornerRadius", UDim.new(0, 20))
-- Create frame
local frame = Instance.new("Frame")
frame.Size = UDim2.new(0.4, 0, 0.2, 0)
frame.Parent = screenGui
-- Apply tag to frame
CollectionService:AddTag(frame, "RoundedCorner20")
Methoden
GetProperties
Gibt ein Wörterbuch von Schlüssel-Wert-Paaren zurück, die die Eigenschaften der StyleRule beschreiben, zum Beispiel:
local ReplicatedStorage = game:GetService("ReplicatedStorage")local coreSheet = ReplicatedStorage:FindFirstChild("CoreSheet")-- Holen Sie sich den Verweis auf die Stilregellocal frameRule = coreSheet.Framelocal props = frameRule:GetProperties()print(props)--[[{["AnchorPoint"] = 0.5, 0,["BackgroundColor3"] = 1, 0, 0.25}]]
Rückgaben
Wörterbuch von Schlüssel-Wert-Paaren, die die Eigenschaften der StyleRule beschreiben.
GetProperty
Gibt den Wert einer bestimmten Eigenschaft in der StyleRule zurück.
local ReplicatedStorage = game:GetService("ReplicatedStorage")local coreSheet = ReplicatedStorage:FindFirstChild("CoreSheet")-- Holen Sie sich den Verweis auf die Stilregellocal frameRule = coreSheet.Framelocal prop = frameRule:GetProperty("AnchorPoint")print(prop) --> 0.5, 0
Parameter
Schnellname der Eigenschaft, zum Beispiel "AnchorPoint" oder "BackgroundColor3".
Rückgaben
Wert der Eigenschaft.
SetProperties
Ähnlich wie SetProperty() aber lässt dich mehrere Eigenschaften des StyleRule gleichzeitig erklären und festlegen.Jede Zuweisung sollte eine gültige Eigenschaft des betroffenen GuiObject oder UIComponent ( UICorner , UIGradient , etc.) sein, und jeder zugewiesene Wert sollte dem Werttyп der zugewiesenen Eigenschaft entsprechen, zum Beispiel Vector2 für AnchorPoint oder Color3 für BackgroundColor3.
Versuche, ungültige Eigennamen wie "AnchorPt" oder "BkColor" zuzuweisen, werden im Stillstand scheitern.Typische Fehler wie CFrame für AnchorPoint oder UDim2 für BackgroundColor3 werden auch fehlschlagen und ein Fehler wird im Ausgabe-Fenster erscheinen.
Um nur eine Eigenschaft von einem StyleRule zu setzen/aktualisieren, siehe SetProperty() .
local ReplicatedStorage = game:GetService("ReplicatedStorage")local coreSheet = ReplicatedStorage:FindFirstChild("CoreSheet")-- Holen Sie sich den Verweis auf die Stilregellocal frameRule = coreSheet.Frame-- Regel属性 setzenframeRule:SetProperties({["AnchorPoint"] = Vector2.new(0.5, 0),["BackgroundColor3"] = Color3.new(1, 0, 0.25)})
Beachten Sie, dass Sie Token als Eigenschaftswerte durch das Präfix $ zuweisen können:
local ReplicatedStorage = game:GetService("ReplicatedStorage")local coreSheet = ReplicatedStorage:FindFirstChild("CoreSheet")local tokensSheet = ReplicatedStorage:FindFirstChild("Tokens")-- Setze Token (Attribute) auf der Token-SeitetokensSheet:SetAttribute("TopCenterAnchor", Vector2.new(0.5, 0))tokensSheet:SetAttribute("MainBackgroundColor", Color3.new(0.2, 0.2, 0.3))-- Holen Sie sich den Verweis auf die Stilregellocal frameRule = coreSheet.Frame-- Regel属性 setzenframeRule:SetProperties({["AnchorPoint"] = "$TopCenterAnchor",["BackgroundColor3"] = "$MainBackgroundColor"})
Parameter
Wörterbuch von Schlüssel-Wert-Paaren, die die zu setzenden Eigenschaften definieren.
Rückgaben
SetProperty
Legt eine neue Eigenschaft (oder modifiziert eine vorhandene Eigenschaft) für die StyleRule fest.Der name Parameter sollte eine gültige Eigenschaft des betroffenen GuiObject oder UIComponent ( UICorner , UIGradient , etc.) sein, und der zugewiesene Wert sollte dem Werttyp der Eigenschaft entsprechen, zum Beispiel Vector2 für AnchorPoint oder Color3 für BackgroundColor3.
Versuche, ungültige Eigennamen wie "AnchorPt" oder "BkColor" zuzuweisen, werden im Stillstand scheitern.Typische Fehler wie CFrame für AnchorPoint oder UDim2 für BackgroundColor3 werden auch fehlschlagen und ein Fehler wird im Ausgabe-Fenster erscheinen.
Um mehrere Eigenschaften für ein StyleRule auf einmal festzulegen, siehe SetProperties() .
local ReplicatedStorage = game:GetService("ReplicatedStorage")local coreSheet = ReplicatedStorage:FindFirstChild("CoreSheet")-- Holen Sie sich den Verweis auf die Stilregellocal frameRule = coreSheet.Frame-- Regel-Eigenschaft festlegenframeRule:SetProperty("BackgroundColor3", Color3.new(1, 0, 0.25))
Beachten Sie, dass Sie Token als Eigenschaftswerte durch das Präfix $ zuweisen können:
local ReplicatedStorage = game:GetService("ReplicatedStorage")local coreSheet = ReplicatedStorage:FindFirstChild("CoreSheet")local tokensSheet = ReplicatedStorage:FindFirstChild("Tokens")-- Setze ein neues Token (Attribut) auf der Token-SeitetokensSheet:SetAttribute("MainBackgroundColor", Color3.new(0.2, 0.2, 0.3))-- Holen Sie sich den Verweis auf die Stilregellocal frameRule = coreSheet.Frame-- Stelle die Regel属性 auf, um das Token als seinen Wert zu verwendenframeRule:SetProperty("BackgroundColor3, "$MainBackgroundColor")
Parameter
Eigenschaftsname zum Festlegen, zum Beispiel "BackgroundColor3".
Eigenschaftswert zum Festlegen, zum Beispiel Color3.new(1, 0, 0.25).