Bonjour à tous.
Je souhaite réactualiser une partie de ma barre d'état après passage dans une fonction.
Voici la structure du code, le Widget parent étant mc :
Donc au changement de zoom, je souhaite que le nouveau niveau s'affiche dans le Qlabel zoomLevel qui lui est assigné de statusbar. J'ai beau tourner le problème, je ne trouve pas la syntaxe qui convient, la dernière ligne étant ce qui me semble cohérent, mais faux.
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 #include "gspv.h" #include ... #include <QStatusBar> Gspv::Gspv(QWidget*) { // create MapControl mc = new MapControl(QSize(380,540)); ... //Barre d'état statusBar = new QStatusBar( this ); setStatusBar(statusBar); loadingProgress = new QLabel(""); statusBar->addWidget( loadingProgress ); loadingProgressTimer = new QTimer(this); connect(loadingProgressTimer, SIGNAL(timeout()), this, SLOT(updateProgress()), Qt::QueuedConnection ); loadingProgressTimer->start( 500 ); //update every 500ms zoomLevel = new QLabel(); zoomLevel->setIndent(3); statusBar->addWidget(zoomLevel,1); zoomLevel->setText("Niveau de zoom : " + QString::number(mc->currentZoom())); .... } void Gspv::mapControlZoomChanged(const QPointF &coordinate, int zoom) const { Q_UNUSED(coordinate); if ( zoomActions.at(zoom) ) { zoomActions.at(zoom)->setChecked( true ); statusBar->Qlabel(zoomLevel)->setText("Niveau de zoom : " + QString::number(mc->currentZoom())); } }
Peut-être aussi (qui à dit certainement ?) un problème de visibilité ???
Auriez-vous une petite idée du problème et de sa solution, sachant qu'unne met pas non plus à jour la valeur.
Code : Sélectionner tout - Visualiser dans une fenêtre à part statusBar->update
Par avance, merci pour votre aide.
Partager