Bonsoir à tous,

(Eh oui encore une question...)
Alors je fais appel à vous cette fois car je rencontre un petit probleme (mais costaud) avec un QListIterator.
Voila le probleme:
First of all, j'avais besoin d'un attribut de type QListIterator dans ma classe; j'ai du declarer un pointeur de cet attribut et faire une petite bidouille car un QListIterator n'est pas instanciable sans lui avoir passé en argument un Qlist... bref ensuite voila le probleme:
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
 
bool Dialog::listProcessing() {
  qDebug() << "begin of list processing...";
  QFile list(lineEdit->text());
  list.open(QIODevice::ReadOnly);
  QString line;
 
  while(1) {
    line = (QString)(list.readLine());
    if (line.isEmpty())
      break;
    if (line.startsWith("#image#")) {
      line.remove("#image#");
      file << line.trimmed();
    }
  }
  QListIterator<QString> i(file);
  iterator = &i;
  //iterator->next();
  print(iterator->next());
  qDebug() << "end of list processing!";
}
 
void Dialog::previous() {
  if (iterator->hasPrevious());
    print(iterator->previous());
}
 
void Dialog::next() {
  if (iterator->hasNext())
    print(iterator->next());
}
Dans ma fonction listProcessing() l'utilisation des iterator->next() fonctionnent à merveille (meme celui de la ligne commentée)... mais une fois rentré dans une des deux dernières fonctions: plantage et fermeture du programme sans afficher l'image suivante (ou precedente, selon le cas).
Apres un petit debuggage, je me rend compte que l'utilisation de iterator->next() ou previous() ne fonctionne que dans listProcessing();

Alors je fait appel à votre serviabilité... aidez moi svp.

PS: list est un fichier ASCII qui contient deux chemin d'images chacun ecrit sur une ligne.

N'hesitez pas si vous desirez plus d'info., merci par avance.

Mac & Cheese