Widgets: Transparents und Hintergrundbild
die funktion ist ind er hilfe.cpp
und die funktion setbackgroundimage(parent,img);
rufe ich im konstruktor von hilfe auf.
der prototyp ist auch in der header von hilfe.h
--->BLACKOUT
und die funktion setbackgroundimage(parent,img);
rufe ich im konstruktor von hilfe auf.
der prototyp ist auch in der header von hilfe.h
--->BLACKOUT
Zuletzt geändert von shader76 am 12. April 2006 15:50, insgesamt 2-mal geändert.
-shader76-
-Visual Studio.Net 2003 & QT4.1
-Visual Studio.Net 2003 & QT4.1
Die ist aber nicht in deiner Hilfe Klasse, wenn da kein Hilfe::SetBackgroundImage dabeisteht.shader76 hat geschrieben:Konstruktor:Code: Alles auswählen
Funktion: [code]void SetBackgroundImage ( QWidget *fp_widget, const QPixmap *img ) { QPalette newPalette = fp_widget->palette ( ); newPalette.setBrush(QPalette::Base,QBrush (*img)); newPalette.setBrush(QPalette::Background,QBrush (*img)); fp_widget->setPalette ( newPalette ); }
Ich denke, das duerfte der einzige Fehler sein
Goos
habs auch grade gemerkt
die funktion habe ich gerade verbessert
nun stürzt er aber komplett ab bzw er setzt das Bild als Hintergrund in die GUI wo der hilfe button ist, soll es aber in die GUI reinmachen welcher durch den hilfe button aufgerufen wird.
die funktion habe ich gerade verbessert
Code: Alles auswählen
void [b]Hilfe[/b]::SetBackgroundImage ( QWidget *fp_widget, const QPixmap *img )
nun stürzt er aber komplett ab bzw er setzt das Bild als Hintergrund in die GUI wo der hilfe button ist, soll es aber in die GUI reinmachen welcher durch den hilfe button aufgerufen wird.
-shader76-
-Visual Studio.Net 2003 & QT4.1
-Visual Studio.Net 2003 & QT4.1
GOOS ich bin ja sooo......
sorry für die vielen fragen aber ich stehe dermaßen im zeitdruck!!!!
Die DEADLINE ist bald und es ist noch so viel zu tun.
und das an meinem 30.Geburtstag
beschäftige ich erst seit knapp5 wochen mit qt und habe hier eine menge
gelernt.
Vielen Dank
King Regard
sorry für die vielen fragen aber ich stehe dermaßen im zeitdruck!!!!
Die DEADLINE ist bald und es ist noch so viel zu tun.
und das an meinem 30.Geburtstag
beschäftige ich erst seit knapp5 wochen mit qt und habe hier eine menge
gelernt.
Vielen Dank
King Regard
Zuletzt geändert von shader76 am 12. April 2006 16:41, insgesamt 1-mal geändert.
-shader76-
-Visual Studio.Net 2003 & QT4.1
-Visual Studio.Net 2003 & QT4.1
Hallo zusammen,
hab das gleiche Problem wir ihr, ich brauch einen transparenten Hintergrund!
Hab mir den Code vom Anfang angesehen und sieht auch gut aus!
Leider funktioniert er bei mir nicht, bis jetzt noch nicht rausgefunden wieso!
Allerdings finde ich diese Lösung etwas aufwendig um einen Hintergrund transparent zu machen!
Daher hab mal bei den Trolls geschaut, was die so sagen und siehe da
http://doc.trolltech.com/qq/qq16-background.html
Hier wird gezeigt wie man widgets oder label einfach mit von Qt (daher auch optimierten) Attributen und Methoden druchsichtig macht!
Aber leider gehts bei mir wieder nicht, weil ich über ein ActiveX Control was malen soll!
naja
Grüße
goofy
edit: vergessen das h von http zur url dazu tun ...
hab das gleiche Problem wir ihr, ich brauch einen transparenten Hintergrund!
Hab mir den Code vom Anfang angesehen und sieht auch gut aus!
Leider funktioniert er bei mir nicht, bis jetzt noch nicht rausgefunden wieso!
Allerdings finde ich diese Lösung etwas aufwendig um einen Hintergrund transparent zu machen!
Daher hab mal bei den Trolls geschaut, was die so sagen und siehe da
http://doc.trolltech.com/qq/qq16-background.html
Hier wird gezeigt wie man widgets oder label einfach mit von Qt (daher auch optimierten) Attributen und Methoden druchsichtig macht!
Aber leider gehts bei mir wieder nicht, weil ich über ein ActiveX Control was malen soll!
naja
Grüße
goofy
edit: vergessen das h von http zur url dazu tun ...
Hallo, hab mir die Datei mal in mein Progrämle reingebaut, und tut auch so wie es soll - zumindest eingeschränkt.
Ich möchte in meinem GUI einen Textbrowser mit verschiedenen Hintergrundbilder ausstattten, je nachdem welchen Knopf ich drücke
(also z.B. Knopf eins gibt mir eine Information über einen Elefanten, daher möchte ich einen elefanten als hintergrundbildchen habe, knopf zwei das selbe, nur mit ner Maus, usw.)
Ich habe mir eine Datei geschrieben, in der lauter QStrings stehen, die den Pfad der entsprechenden Bildchen enthalten, diese Bilder werden auch entsprechend gesetzt im Code, je hnachdem welches Tier ich auswähle.
Wenn ich aber nun folgendes mache
QTextBrowser *TB_info = new QTextBrowser;
QPixmap *hintergrund = new QPixmap;
QString bild(Tierart->s_getHintergrundbild());
hintergrund->load(bild);
SetBackgroundImage(TB_info,hintergrund);
so wird nur eine graue Fläche angezeigt. als Hintergrundbild angezeigt. Weiss jemand, woran das liegen könnte?
EDIT: Hat sich erledigt, rumspielen hilf meist doch am besten
EDIT2:
So, hab nun leider auch gleich die nächsten beiden Probleme. Ich kann nun wunderbar die verschiedensten Hintergrundbilder in den Textbrowser reinladen. ABER: die Bilder werden gekachelt dargestellt. Ich hätte aber gerne, dass dieses Bild nur EINMAL dargestellt wird(Problem No.1) und nach Möglichkeit auch zentriert im Textbrowser(Problem No.2a) oder alternativ an beliebiger Stelle relativ zum Browserfensterrand(Problem No. 2b).
Hat jemand ne Idee, wie man das macht? Hab es schon mit dem pixmap.scaled() Befehl versucht, aber da pasiet gar nix, wenn ich da einfach mal verschiedene Werte reinsetz.
Ich möchte in meinem GUI einen Textbrowser mit verschiedenen Hintergrundbilder ausstattten, je nachdem welchen Knopf ich drücke
(also z.B. Knopf eins gibt mir eine Information über einen Elefanten, daher möchte ich einen elefanten als hintergrundbildchen habe, knopf zwei das selbe, nur mit ner Maus, usw.)
Ich habe mir eine Datei geschrieben, in der lauter QStrings stehen, die den Pfad der entsprechenden Bildchen enthalten, diese Bilder werden auch entsprechend gesetzt im Code, je hnachdem welches Tier ich auswähle.
Wenn ich aber nun folgendes mache
QTextBrowser *TB_info = new QTextBrowser;
QPixmap *hintergrund = new QPixmap;
QString bild(Tierart->s_getHintergrundbild());
hintergrund->load(bild);
SetBackgroundImage(TB_info,hintergrund);
so wird nur eine graue Fläche angezeigt. als Hintergrundbild angezeigt. Weiss jemand, woran das liegen könnte?
EDIT: Hat sich erledigt, rumspielen hilf meist doch am besten
EDIT2:
So, hab nun leider auch gleich die nächsten beiden Probleme. Ich kann nun wunderbar die verschiedensten Hintergrundbilder in den Textbrowser reinladen. ABER: die Bilder werden gekachelt dargestellt. Ich hätte aber gerne, dass dieses Bild nur EINMAL dargestellt wird(Problem No.1) und nach Möglichkeit auch zentriert im Textbrowser(Problem No.2a) oder alternativ an beliebiger Stelle relativ zum Browserfensterrand(Problem No. 2b).
Hat jemand ne Idee, wie man das macht? Hab es schon mit dem pixmap.scaled() Befehl versucht, aber da pasiet gar nix, wenn ich da einfach mal verschiedene Werte reinsetz.
Wer nur einen Hammer als Werkzeug hat, für den sieht jedes Problem wie ein Nagel aus.
Transparente Widgets - setAlpha
Funktioniert der Aufruf setAlpha() mit dem QColor-Object (aus unten aufgeführtem Beispiel, siehe auch ganz oben in diesem FragePunkt)
Ich verwende Qt 3.3.7 und habe eine solche Methode in der Klasse QColor nicht gefunden.
Ich suche eine Möglichkeit mit Transparenz in eine QPixmap zu zeichnen. Als QBrush oder direkt per QColor oder ganz anders.
Vielleicht hat jemand eine Idee und kann mir weiterhelfen!
QBrush BrushSetAlpha ( QBrush f_brush, const int f_alpha )
{
QColor color = f_brush.color ( );
color.setAlpha ( f_alpha );
f_brush.setColor ( color );
return f_brush;
}
Ich verwende Qt 3.3.7 und habe eine solche Methode in der Klasse QColor nicht gefunden.
Ich suche eine Möglichkeit mit Transparenz in eine QPixmap zu zeichnen. Als QBrush oder direkt per QColor oder ganz anders.
Vielleicht hat jemand eine Idee und kann mir weiterhelfen!
QBrush BrushSetAlpha ( QBrush f_brush, const int f_alpha )
{
QColor color = f_brush.color ( );
color.setAlpha ( f_alpha );
f_brush.setColor ( color );
return f_brush;
}
-
- Beiträge: 605
- Registriert: 28. Juni 2007 15:01
- Kontaktdaten:
-
- Beiträge: 605
- Registriert: 28. Juni 2007 15:01
- Kontaktdaten: