IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

[Qt 4.4.3 Win]QMainWindow et QDockWidget

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté Avatar de cayou66
    Inscrit en
    Décembre 2008
    Messages
    286
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Décembre 2008
    Messages : 286
    Par défaut [Qt 4.4.3 Win]QMainWindow et QDockWidget
    Salut à tous,
    j'ai un petit soucis avec une QMainWindow. En effet, j'ai dans cette QMainWindow au centre un QLabel qui contient une image. J'ai aussi une QDockWidget rattachée à ma QMainWindow. Le problème est lorsque j'ajoute mon centralWidget, la QDockWidget ne peut plus se placer où elle veut dans la QMainWindow(LeftDockWidgetArea, RightDockWidgetArea, etc...) à l'aide de la souris. Elle peut alors seulement revenir à sa place initiale càd Qt::LeftDockWidgetArea.

    Pourquoi le QLabel empêche-t-il cette fonctionnalité?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    m_dock = new QDockWidget("Outils", this);
    addDockWidget(Qt::LeftDockWidgetArea, m_dock);
     
    QLabel * welcome = new QLabel;
        m_welcomeSub = m_zoneCentrale->addSubWindow(welcome);
        welcome->setWindowState(Qt::WindowMaximized);
        welcome->setPixmap(QPixmap("welcome.png"));
        setCentralWidget(m_zoneCentrale);

  2. #2
    Membre expérimenté Avatar de cayou66
    Inscrit en
    Décembre 2008
    Messages
    286
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Décembre 2008
    Messages : 286
    Par défaut
    Je viens de voir que si j'écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    m_zoneCentrale->setViewMode(QMdiArea::TabbedView);
    au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    m_zoneCentrale->setViewMode(QMdiArea::SubWindowView);
    J'arrive à pouvoir la placer en haut et en bas, mais ni à gauche après l'avoir enlever avec la souris, ni à droite...

    De plus, avec une centralWidget, un onglet apparait, et ce n'est pas très esthétique pour une image en background...

    Nouvelle piste :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    QBrush arrierePlan; // un QBrush
    arrierePlan.setTexture(QPixmap("arriereplan.bmp"));
    m_zoneCentrale->setBackground(arrierePlan);
    Ce code fonctionne à merveille

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. QMainWindow et QDockWidget
    Par urza57 dans le forum Débuter
    Réponses: 0
    Dernier message: 30/07/2012, 16h13
  2. [QtGui] Retailler dynamiquement un QDockWidget dans un QMainWindow
    Par oaimac dans le forum PyQt
    Réponses: 6
    Dernier message: 04/02/2011, 17h50
  3. [macOS] QMainWindow et QDockWidget
    Par clampin dans le forum Plateformes
    Réponses: 9
    Dernier message: 30/11/2010, 17h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo