[Qt] disposition dans un layout

Fermé
Arameya - 22 juin 2009 à 11:18
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 - 22 juin 2009 à 15:34
Bonjour,

Voila, je suis sur la création d'un calendrier perso doté de bouton ... perso (oui ça choc je sais ^^).

Mon bouton marche plutôt bien, mais je ne peut pas l'appliquer dans un QGridLayout. Je suppose qu'il y'a une manip a faire mais je ne sais pas laquel...

Voici mon code du bouton:

#include "calbutton.h"

#include <QPainter>

CalButton::CalButton(QWidget *parent, int x1, int y1) : QAbstractButton(parent), B_State(State_Unclick)
{
    
    x = x1;
    y = y1;
}

CalButton::~CalButton()
{
}

void CalButton::paintEvent(QPaintEvent *e)
{
    Q_UNUSED(e);

    QPainter painter(this);

    if(isEnabled())
    {
        switch(B_State)
        {
            case State_Unclick:
                painter.setBrush(QColor(QColor::fromRgb(230, 108, 66)));
                painter.setPen(QColor(QColor::fromRgb(230, 108, 66)));
                painter.drawRect(QRect(0, 0, x, y));
                break;
            case State_Click:
                painter.setBrush(QColor(QColor::fromRgb(198, 66, 26)));
                painter.setPen(QColor(QColor::fromRgb(198, 66, 26)));
                painter.drawRect(QRect(0, 0, x, y));
                break;
         }
    }



}

void CalButton::mousePressEvent(QMouseEvent *e)
{
    QAbstractButton::mousePressEvent(e);
    if(B_State == State_Click)
    {
    B_State = State_Unclick;

    }
    else 
    {
        B_State = State_Click; 
    }
    update();
}


Voila si vous pouviez m'aider...

Je rappel mon problème: Je ne peut pas appliquer cet objet dans un layout.

Si je crée mon layout de manière statique, chaque objet créé se place l'un sur l'autre, si je crée mon layout dynamiquement, aucun ne s'affiche...

(ce n'est pas un problème lors de la création du layout puisque quand je change d'objet et je met a la place des QPushButton ça fonctionne niquel, donc j'en déduit que j'ai oublié de faire quelque chose lors de la création)

Merci d'avance pour votre aide
Arameya

1 réponse

Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
22 juin 2009 à 15:34
Salut.
Il n'y a pas de raison, à moins que la taille par défaut du bouton soit énorme, ou ridicule, ou un truc dans le genre.
Met s ton le code où tu configures les layout. Je ne sais pas trop si je pourrai t'aider, j'ai l'habitude d'utiliser le designer.
0

Discussions similaires