kann man mit QT auch eigene Window Designs einbinden? Ein Beispiel: Die oberste Leiste und die Buttons (minimize, close ....) verändern? Ein sehr schönes Beispiel was ich aus den Fenstern machen möchte wäre Winamp oder Trillian (ähnlich wie ICQ).
Eigenes Window Design?
Eigenes Window Design?
Hi,
kann man mit QT auch eigene Window Designs einbinden? Ein Beispiel: Die oberste Leiste und die Buttons (minimize, close ....) verändern? Ein sehr schönes Beispiel was ich aus den Fenstern machen möchte wäre Winamp oder Trillian (ähnlich wie ICQ).
kann man mit QT auch eigene Window Designs einbinden? Ein Beispiel: Die oberste Leiste und die Buttons (minimize, close ....) verändern? Ein sehr schönes Beispiel was ich aus den Fenstern machen möchte wäre Winamp oder Trillian (ähnlich wie ICQ).
Der Rahmen von Fenstern gehört dem WindowManager. Qt kann dem nur Vorschläge unterbreiten, wie er den Fensterrahmen zeichnen soll.
Man kann aber mit Qt::FramelessWindowHint (Qt4) bzw. Qt::WStyle_NoBorder (Qt3) ein rahmenloses Fenster erstellen und dann selbst die Titelleiste und die Ränder erschaffen. Das Verschieben und die Größenänderung per Maus muss man aber auch selbst implementieren.
Man kann aber mit Qt::FramelessWindowHint (Qt4) bzw. Qt::WStyle_NoBorder (Qt3) ein rahmenloses Fenster erstellen und dann selbst die Titelleiste und die Ränder erschaffen. Das Verschieben und die Größenänderung per Maus muss man aber auch selbst implementieren.
Andreas
Ich versuche jetzt schon verzweifelt deinen NoBorder anzuwenden.
Hier mal mein Script.
Hier mal mein Script.
Code: Alles auswählen
/****************************************************************************
** Form implementation generated from reading ui file 'NoBorder.ui'
**
** Created: Sat Sep 24 13:26:37 2005
** by: The User Interface Compiler ($Id: qt/main.cpp 3.1.2 edited Dec 19 11:45 $)
**
** WARNING! All changes made in this file will be lost!
****************************************************************************/
#include "NoBorder.h"
#include <qvariant.h>
#include <qlayout.h>
#include <qtooltip.h>
#include <qwhatsthis.h>
/*
* Constructs a Form1 as a child of 'parent', with the
* name 'name' and widget flags set to 'f'.
*/
Form1::Form1( QWidget* parent, const char* name, WFlags fl )
: QWidget( parent, name, fl )
{
if ( !name )
setName( "Form1" );
languageChange();
resize( QSize(600, 480).expandedTo(minimumSizeHint()) );
WStyle_NoBorder();
clearWState( WState_Polished );
}
/*
* Destroys the object and frees any allocated resources
*/
Form1::~Form1()
{
// no need to delete child widgets, Qt does it all for us
}
/*
* Sets the strings of the subwidgets using the current
* language.
*/
void Form1::languageChange()
{
setCaption( tr( "Form1" ) );
}
-
FlorianBecker
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten:
Äh, hast du versucht das in dem generierten Code der UI Datei einzufügen, oder ist das mit dem Designer so erstellt worden? Wusste gar nicht, dass das geht.
Die WFlags sind ein wenig bockig, und du könntest die bereits im Konstruktor übergeben. Am besten du suchst dir die Informationen aus der Dokumentation, denn da stehen auch Beispiele dafür.
Die WFlags sind ein wenig bockig, und du könntest die bereits im Konstruktor übergeben. Am besten du suchst dir die Informationen aus der Dokumentation, denn da stehen auch Beispiele dafür.
-
FlorianBecker
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten:
Das geht im Designer selber nicht, sondern musst du machen, beim einbinden der Datei in dein Programm.
Warum das falsch ist?
WARNING! All changes made in this file will be lost!
Naja, alles was du da änderst geht eh wieder verloren, wenn du Änderungen in der UI Datei machst. Wenn du Änderungen in der UI unbedingt machen willst (warum auch immer), kannst das auch gleich HardCoden.
Warum das falsch ist?
WARNING! All changes made in this file will be lost!
Naja, alles was du da änderst geht eh wieder verloren, wenn du Änderungen in der UI Datei machst. Wenn du Änderungen in der UI unbedingt machen willst (warum auch immer), kannst das auch gleich HardCoden.
Moment...
Den Designer sollst du nutzen,
um bequem ein paar Buttons zusammenzuklicken.
Danach sollst du z.B. selbst einen QDialog schreiben,
die UI (vom Designer) einbinden
und dann programmierst du den restlichen Code dazu.
Eigene Slots, Signals oder eben deinen eignenen Look.
So brauchst du das ganze Layouten nicht selbst machen...
HENNING
Den Designer sollst du nutzen,
um bequem ein paar Buttons zusammenzuklicken.
Danach sollst du z.B. selbst einen QDialog schreiben,
die UI (vom Designer) einbinden
und dann programmierst du den restlichen Code dazu.
Eigene Slots, Signals oder eben deinen eignenen Look.
So brauchst du das ganze Layouten nicht selbst machen...
HENNING
-
CaptnChaos
- Beiträge: 605
- Registriert: 28. Juni 2007 15:01
- Kontaktdaten:
-
FlorianBecker
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten:
-
CaptnChaos
- Beiträge: 605
- Registriert: 28. Juni 2007 15:01
- Kontaktdaten:
http://qtforum.de/forum/viewforum.php?f=6
mfg Markus
mfg Markus
-
FlorianBecker
- Beiträge: 1213
- Registriert: 2. Dezember 2004 10:54
- Kontaktdaten:
-
CaptnChaos
- Beiträge: 605
- Registriert: 28. Juni 2007 15:01
- Kontaktdaten: