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 :

Créer des menus avec une image

  1. #1
    Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Novembre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2017
    Messages : 13
    Points : 4
    Points
    4
    Par défaut Créer des menus avec une image
    Bonsoir ,

    comme je débute Qt depuis quelques semaines,j'ai une idée que j'arrive pas à la programmer.

    Apres avoir créer le widget qu'on en avait parlé , j'ai pensé à ajouter un toolbar qui permet d'ajouter un nouveau produit qui ne se trouve pas bien sur dans la combobox ,du coup ce toolbar va nous donner l’accès a ouvrir autre widget ou on va remplir le nom du produit,son prix d'achat,prix de vente,stock. puis on clique sur un bouton "ok" par exemple et du coup le produit va s'ajouter dans le fichier csv des produits,et aussi dans la combobox de le widget principal.

    svp aidez moi à avancer .Merci d'avance

    voici le code du widget principal
    Editeurproduit.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    #include "Produit.h"
    #include <QMainWindow>
    #include <QFileDialog>
    #include <QVector>
    #include <QComboBox>
    #include <QSpinBox>
    #include<QToolBar>
    #include<QtGui>
     
     
     
    class EditeurProduit : public QMainWindow
    {
        Q_OBJECT
        QAction *add;
     
    public:
        EditeurProduit(QWidget *parent = 0);
        ~EditeurProduit();
        int find( const QString& nomP) ; // retourne index du produit, ou -1
        void load();
     
     
    public slots:
        void slotProduitChange(int index);
     
     
    private:
        QString nom_ ;
        double pvente_, pachat_ ; // unités non gérées
        int stock_ ;
        QVector<Produit> r_;
        QComboBox *produit_;
        QDoubleSpinBox  *prixAchat_;
        QDoubleSpinBox  *prixVente_;
        QSpinBox  *quantiteStock_;
     
    } ;
     
     
     
    #endif // MAINWINDOW_H
    Editeurproduit.cpp:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    #include "EditeurProduit.h"
    #include<QBoxLayout>
    #include<QSpinBox>
    #include<QApplication>
    #include<QFrame>
    #include<QFormLayout>
    #include<QComboBox>
    #include<QFile>
    #include<QString>
    #include<QPushButton>
    #include<QTextLine>
    #include<QLabel>
     
     
    EditeurProduit::~EditeurProduit()
    {}
     
    EditeurProduit::EditeurProduit(QWidget *parent) : QMainWindow(parent)
    {
        QFrame *frame =new QFrame ;
        setCentralWidget(frame);
        QBoxLayout*lay=new QBoxLayout(QBoxLayout::TopToBottom,frame);
        QLabel *label = new QLabel("Produit  ",this);
        QLabel *label1 = new QLabel("Prix d'achat ",this);
        QLabel *label2 = new QLabel("Prix de vente ",this);
        QLabel *label3 = new QLabel("Stock ",this);
        produit_ = new QComboBox;
        prixVente_ = new QDoubleSpinBox;
        prixAchat_ = new QDoubleSpinBox;
        quantiteStock_ = new QSpinBox;
     
        lay->addWidget(label);
        lay->addWidget(produit_);
        lay->addWidget(label1);
        lay->addWidget(prixAchat_);
        lay->addWidget(label2);
        lay->addWidget(prixVente_);
        lay->addWidget(label3);
        lay->addWidget(quantiteStock_);
        lay->addStretch();
     
        QHBoxLayout *lay1=new QHBoxLayout ;
        QPushButton *save=new QPushButton("Sauver");
        lay1->addWidget(save);
        QPushButton *close=new QPushButton("Quitter");
        lay1->addWidget(close);
        lay->addLayout(lay1);
     
        r_ = lireProduits("../coffeebreak/Produits.csv") ;
        for(auto  p : r_ )
            produit_->addItem(p.nom());
     
        //Mise à jour du produit lorsque la séléction change
        connect(produit_,SIGNAL(currentIndexChanged(int)),
                this, SLOT(slotProduitChange(int)) );
        if( r_.size() != 0) slotProduitChange(0) ;
    }
     
    int EditeurProduit::find( const QString& nomP)
    {
        for( int k = 0 ; k < r_.size() ; ++k)
            if( nomP == r_[k].nom() )
                return k ;
        return -1 ;
    }
    void EditeurProduit::load()
    {
        /*
        //ouvrir un fichier ayant l'extension .csv
        r_ = lireProduits(QFileDialog::getOpenFileName(this,"Open File", "Produit",".csv"));
        if(!r_.isEmpty())
        {
            comboBox_Produit->clear();
            for(const auto & p :r_) //je récupère le nom du produit et l'insère dans la comboBox
                comboBox_Produit->addItem(p.nom());
            Produit p = r_.first();
            comboBox_Produit->setCurrentIndex(0);
     
        }
    */
    }
    void EditeurProduit::slotProduitChange(int index)
    {
    cout << "index = " << index << endl ;
        Produit& p = r_[index];
        cout << p << endl ;
        cout << "achat=" <<  p.pachat() << endl ;
     
        prixAchat_->setValue(p.pachat());
        prixVente_->setValue(p.pvente());
        quantiteStock_->setEnabled(p.isValid());
     
        if(p.isValid())
            quantiteStock_->setValue(p.stock());
        else
            quantiteStock_->setValue(0);
     
     
     
    }

  2. #2
    Candidat au Club
    Femme Profil pro
    Chercheur en informatique
    Inscrit en
    Novembre 2017
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 31
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Novembre 2017
    Messages : 13
    Points : 4
    Points
    4
    Par défaut
    j'ai commencé à écrire ce petit code, j'ai téléchargé une image png (un plus ) ,mais il s’avère qu'il y'a un problème dans le code et chui bloquée ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    add=new QAction(QIcon(QPixmap("addproduit.png")),"save as",this);
    add=setEnabled(false);
    connect(add,SIGNAL(activated(),this,SLOT(addProduit()));
    QMenu*fileMenu=new QMenu("&Produit",this);
    menuBar()->addMenu(fileMenu);
    fileMenu->addAction(add);
    Merci de bien m'aider.

Discussions similaires

  1. [AC-2010] Impossible de créer des relations avec une table liée à Outlook
    Par lagratteCchouette dans le forum Modélisation
    Réponses: 4
    Dernier message: 26/01/2014, 22h44
  2. [Images] Créer des miniatures d'une image
    Par jeangaza dans le forum Bibliothèques et frameworks
    Réponses: 0
    Dernier message: 15/06/2010, 16h42
  3. Créer un lien avec une image
    Par saiyens dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 05/03/2009, 22h54
  4. [CSS] menus deroulant avec une image en background
    Par guy2004 dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 26/03/2006, 18h47
  5. [Eclipse] [VE] Créer des menus avec les classes SWT de VE
    Par jbcorens dans le forum SWT/JFace
    Réponses: 3
    Dernier message: 30/08/2005, 13h25

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