Bonjour ,
suite à plusieurs recherches et d'effort , je me suis retrouvée perdue et j'ai pas pu avancer , pouvez vous m'aider svp !
je voudrai écrire un programme qui va me permis de créer une interface sur Qt .en fait j'ai construit un fichier csv qui se constitue de toutes les donnes ( produit, prix d'achat,prix de vente ), puis j'ai écris un programme sur Qt qui lit ce fichier et ça marche bien jusqu’à la .
l'interface doit contenir :
un comBobox qui contient tous les produits qui sont dans le fichier csv (coca,café,tisane,eau),et à moi de sélectionner le produit que je veux
un spinbox 1 qui affiche le prix d'achat de chaque produit sélectionné dans la combobox.
un spinbox 2 qui affiche le prix de vente de chaque produit sélectionné dans la combobox.
un spinbox 3 qui affiche le stock de chaque produit sélectionné dans la combobox.
Deux boutons (sauver , quitter),avec leur slot.
je veux prie de bien m'aider , en fait j'ai écrit un code mais il n'est pas complet j'arrive pas à le terminer :

Produit.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
#include <QMainWindow>
#include<QFileDialog>
#include<QVector>
#include<QComboBox>
#include<QSpinBox>
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = 0);
~MainWindow();
Produit( const QString& nom="", double pvente=0, double pachat=0, int stock=-9999 , const QString& ustock="piece") ;
public slots:
 
void slotComboBox_currentIndexChanged(int index);
private:
 
QString nom_ ;
double pvente_, pachat_ ; // unités non gérées
int stock_ ;
QVector<Produit> r;
int find( const QString& nomP) ; // retourne index du produit, ou -1
QComboBox *C1;
QSpinBox *S1;
QSpinBox*S2;
QSpinBox*S3;
 
} ;
Produit.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
#include "mainwindow.h"
#include<QBoxLayout>
#include<QSpinBox>
#include<QApplication>
#include<QFrame>
#include<QFormLayout>
#include<QComboBox>
#include<QFile>
#include<QString>
#include<QPushButton>
#include<QTextLine>
#include<QLabel>
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
QFrame *frame =new QFrame(this);
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);
lay->addWidget(label);
lay->addWidget(C1);
lay->addWidget(label1);
lay->addWidget(S1);
lay->addWidget(label2);
lay->addWidget(S2);
lay->addWidget(label3);
lay->addWidget(S3);
lay->addStretch();
QHBoxLayout*lay1=new QHBoxLayout(this);
QPushButton*b1=new QPushButton("Sauver");
lay1->addWidget(b1);
QPushButton*b2=new QPushButton("Quitter");
connect(b1,SIGNAL(clicked(),qApp,SLOT(quit()));
lay1->addWidget(b2);
lay->addLayout(lay1);
}
 
int MainWindow::find( const QString& nomP)
{
for( int k = 0 ; k < r.size() ; ++k)
if( nomP == r[k].nom() ) 
return k ;
return -1 ;
}
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent)
{
//ouvrir un fichier ayant l'extension .csv
r = lireProduits(QFileDialog::getOpenFileName(this,"Open File", ".",".csv"));
for(const auto & Produit :r) //je récupère le nom du produit et l'insère dans la comboBox
comboBox_Produit->addItem(Produit.nom());
ComboBox *C1->setcurrentindex(0,r);
????????????????????????????// la ou je beugue
 
{
if(it!=r.end())
{
spinBox_prixAchat->setValue(it->pachat());
spinBox_prixVente->setValue(it->pvente());
if(it->isValid())
{
spinBox_stocks->setEnabled(true);
spinBox_stocks->setValue(it->stock());
}
else
spinBox_stocks->setEnabled(false);
}
 
 
 
{
qApp->quit();
}
Merci d avance