GroupBox Farbe transparent ?!
-
Hallo zusammen.
Ich hab ein kleines Problem
Ich nutzte den Borland c++ builder 6.
Jetzt habe ich mal ein Image in meine Form eingefügt (als Hintergrund gedacht).
Nun habe ich auch noch ein paar Groupboxen eingebaut.
Das sieht jetzt recht hässlich aus, da die GroupBox ja ihre eigene Farbe hat.Kann mir irgendjemand sagen wie ich die Groubox transparent machen könnte ?
Also, dass nur Groubox Text mit Rahem eine bestimmte Farbe haben und der Rest transparent ist, damit ich mein Hintergrundbild sehen kann.Vielen Dank im Voraus.
mfg Alex
-
File->New->Other->Component
Ancestor Type = TGroupBoxPaint-Methode überscheiben...
-
Vielen Dank soweit !
Könntest du mir das mit der "PaintMethode überschreiben" genauer erklären ?
Weiss jetzt nicht genau wie ich das machen sollVielen Dank im Voraus
mfg Alex
-
Hallo
das heißt du must von TGroupBox eine neue Klasse (hier mal TMyGroupBox genannt) ableiten und dort die Funktion zum Zeichnen ersetzen.
Hier hast du eine Übersicht, worum es geht :
http://bcb-tutorial.c-plusplus.net/komponentenentwicklung/index.htmlDas ganze ist Anwendung von OOP, das solltest du können, bevor du damit anfängst.
bis bald
akari
-
Hi Vielen Dank schonmal soweit
Sorry das ich mich solange net gemeldet habe (Prüfungsstress), hoffe du guckst hier ab und zu nochmal rein und hilst mir weiter
Könntest du mir evtl quellcode für so eine überschriebene GroupBox geben ?
Würde mir auf jeden Fall weiterhelfen....Vielen Dank
mfg Alex
-
Hier is ja so ein Beispiel für ein Label:
void __fastcall Paint()
{
SetBkMode(Canvas->Handle,TRANSPARENT); // macht den Hintergrund des Textes
// transparent
Canvas->TextOut(0,0,Caption);
}Nun würd ich gern wissen was ich in Paint bei einer GroupBox schreiben muss damit ihre Farbe die Transparent wird
Bis Dann
mfg kennt ihr ja langsam
-
Hallo
hab mal ein bißchen rumexperimentiert und festgestellt, das grundsätzlich der Erweiterte Style WS_EX_TRANSPARENT gesetzt werden muß, was durch
SetWindowLong(Handle, GWL_EXSTYLE, GetWindowLong(Handle, GWL_EXSTYLE) ^ WS_EX_TRANSPARENT);
in der abgeleiteten SetParent-Methode auch temporär funktioniert, allerdings verändert sich der angezeigte Zustand des Kontrols immer bei jedem echten Redraw. Wenn ein anderes Fenster über GroupBox gelegt wird, ist nach dem Wegziehen die GroupBox tranparent. Wird aber die Größe des Fensters geändert, verschwindet die GroupBox ganz...
Die Frage ist also, wie kann man den Style festsetzten?
bis bald
akari