ACE: Hintergrund festlegen

Hi,
ich glaub ich sehe den Wald vor lauter Bäumen nicht mehr.
Wie kann ich den Hintergrund meiner MultiLineEditBox ändern?
So dass ich den Hintergrund wie bei den Erfolgen habe.
Ich erstelle die MultilineEditBox so:

mk_MultiLineEditBox2 = AceGUI:Create("MultiLineEditBox")
mk_MultiLineEditBox1:SetLabel(L["Beutevonanderen"])
mk_MultiLineEditBox2:SetWidth(540)
mk_MultiLineEditBox2:SetHeight(600)
mk_MultiLineEditBox2:DisableButton(1)
mk_MultiLineEditBox2:SetNumLines(30)

Kann mich hier mal jemand in die richtige Richtung schupsen :wink:

Für den Hintergrund eines Frames gibt es die Methode Frame:SetBackdrop():

Soweit ich das sehe, sollte diese auch für eine EditBox nutzbar sein. Falls nicht, dann müsstest du halt einfach einen neuen Frame erstellen, der hinter der EditBox liegt und über diesen einen Hintergrund einblenden.

Hi,
ja aber bei der ACE- Bibliothek mit dem ich die Frames mache gibt es die Funktion nicht, bzw. ich sehe sie dort nicht. Notfalls muß ich direkt die API nutzen und auf ACE verzichten.

Dem ist wohl so. Spricht aber ja auch nichts dagegen, oder? Du kannst das Widget mit Ace generieren und trotzdem ohne Ace am Backdrop rumschrauben.

MultiLineEditBox sollte laut Ace-Source imho eine Eigenschaft scrollBG haben, die das Hintergrundframe ist. Das könntest du für SetBackdrop verwenden, würde ich vermuten.
Also (ohne das probiert zu haben):

local backdrop = {
	bgFile = [[Interface\Tooltips\UI-Tooltip-Background]],
	edgeFile = [[Interface\Tooltips\UI-Tooltip-Border]], edgeSize = 16,
	insets = { left = 4, right = 3, top = 4, bottom = 3 }
}
mk_MultiLineEditBox2.scrollBG:SetBackdrop(backdrop)
mk_MultiLineEditBox2.scrollBG:SetBackdropColor(1, 1, 1)
mk_MultiLineEditBox2.scrollBG:SetBackdropBorderColor(0.7, 0.7, 0.7)
1 Like

Danke schön, funktioniert,
ich hatte mich wohl durch den Hinweis bei ACE , dass man die mit ACE erstellten Frames nicht mit “normalen” Befehlen nicht ändern soll, irreführen lassen.

Dieses Thema wurde automatisch 180 Tage nach der letzten Antwort geschlossen. Es sind keine neuen Nachrichten mehr erlaubt.