Ein qt-widget mit komplett transparentem hintergrund

Brauche ich zum erstellen eines qt-widget, die als Eltern für einige andere widgets, und was Sie bestellen.

Nun, die Frage ist, wie mache ich es den hintergrund komplett transparent?

Dachte ich, es zu tun mögen dieses :

struct Imp
{
  Imp( QWidget *parent ) : thisWidget( new QWidget( parent ) )
  {
    thisWidget->setAttribute( Qt::WA_TranslucentBackground, true );
  }

  QWidget *thisWidget;
};

Glaubst du, dass ich brauchen, um das Attribut zu setzen, oder wird es funktionieren, ohne es?

  • Brauchen Sie wirklich einen transparenten hintergrund, oder ist es ausreichend, haben keinen hintergrund? Das ist ein riesiger Unterschied: mit einem transparenten hintergrund, das OS wird sagen, das zugrunde liegende Fenster zu malen, die Pixel. Ohne einen hintergrund, den OS einfach nur erwartet, dass Sie die Kinder malen die gesamte Fenster.
  • Dieses widget ist Plätze in einem Fenster, und nur die Kind-widgets dieses widgets sichtbar sein sollen. Was auch immer hinter diesem widget (wenn nicht von einem Kind-widget) gesehen werden sollte.
  • Ich bin mir nicht sicher, ich verstehe diese Frage... standardmäßig in Qt4, ein QWidget ziehen, der nichts für seinen eigenen hintergrund und nur seine Kinder gezeichnet werden.
  • Ja, dass die Nähte um die richtige Antwort. Warum hast du die Antwort als Kommentar?
  • Ich werde bei einer Antwort, aber ich dachte, ich muss etwas fehlt, da der default-Verhalten ist so leicht zu beobachten, zu arbeiten.
  • Mögliche Duplikate von Machen QWidget transparent

InformationsquelleAutor BЈовић | 2010-11-25
Schreibe einen Kommentar