Bonsoir,
Alors, j'ai crée une courbe a l'aide de Qpainter mais le problème est que la courbe ne s'affiche que dans ma fenêtre principale et pas ailleurs, c'est à dire que QPainter prend effet que sur la fenêtre principale. Or, je voudrais que ma courbe s'affiche dans ma deuxième fenêtre fille cela est-ce possible ?
Voici la partie concernante de mon .cpp
De plus, je fais une ouverture de fichier (par rapport aux fichiers des textes où sont représentées les mesures de la pièce). Mais lors de l'exécution du programme, une erreur d'ouverture de fichier s'affiche l'orque le fichier txt n'est pas dans mon dossier mais quand il se trouve bien dans le dossier, le programme s'exécute normalement. Or, le fichier txt ne doit pas se trouvé dans le dossier avant l'exécution, logiquement il doit se placer dans le dossier une fois que la connexion avec le serveur est établie et ensuite c'est alors la que le fichier texte apparait dans mon dossier. Et c'est alors là que le programme ouvre le fichier, et non avant.Code:void Graphique :: paintEvent ( QPaintEvent *event ) { fstream flx; //flux float tab[4201]; int cpt=0; int a=0, b=0, c=0, d=0; float pixel; float coef=0; flx.open("Mesures.txt",ios::in); // Ouverture du fichier en lecture if ( flx.fail() ) // Verif si erreur ouverture fichier { cout << "Erreur ouverture fichier \n"; _exit(1); // Met fin au processus en cours } while ( !flx.eof() ) // Arret si fin de fichier { //for(cpt=0;cpt<4200;cpt++) //{ flx >> tab[cpt]; // Lecture depuis le fichier cout<<tab[cpt]<<endl; if(tab[cpt]<=0.010) a++; if(tab[cpt]>0.011 && tab[cpt]<3) b++; if(tab[cpt]>3 && tab[cpt]<4) c++; if(tab[cpt]>5) d++; //} } //recherche de plus grand pour calculer le coef if(a>b && a>c && a>d) { coef=(float)a/-160.0; } if(b>a && b>c && b>d) { coef=(float)b/-160.0; } if(c>a && c>b && c>d) { coef=(float)c/-160.0; } if(d>a && d>b && d>c) { coef=(float)d/-160.0; } cout<<"pixel noir:"<<a<<endl; cout<<"pixel vert:"<<b<<endl; cout<<"pixel jaune:"<<c<<endl; cout<<"pixel rouge:"<<d<<endl; QPainter p (this); // p va servir pour dessiner notre widget graphique QRect dim = p.window(); // Donne les limites du dessin p.fillRect(dim,QBrush(Qt::white)); // Remplissage fond en blanc // Changement origine: origine au centre p.translate(dim.width()/2,dim.height()/2); // Axes en noir p.setPen(QPen(Qt::black,1)); p.drawLine(-dim.width()/2,0,dim.width()/2,0); p.drawLine(-300,-dim.height()/2,-300,dim.height()/2); p.drawText(-295,15,"0"); p.drawText(dim.width()/2-15,15,"X"); p.drawText(-295,-180,"Y"); cout<<dim.width()<<endl<<dim.height()<<endl; int i; double x,y; }
Pourriez vous m'aidez s'il vous plait, car cela m'embête vraiment et c'est urgent. Merci d'avance
-----