2010-06-21 5 views
1

Salut J'essaie d'écrire une fonction simple où je charge un fichier texte à un QComboBox, je suis très nouveau à QT et C++. Voici ce que j'ai en ce moment:QT C++ Passage Widgets pour fonctionner

void frmVerification::openTextFile(QComboBox* qCombo, string filename) { 
    using namespace std; 
    string line; 
    ifstream myfile(filename.c_str()); 
    if (myfile.is_open()) 
    { 
     while (! myfile.eof()) 
     { 
     getline (myfile,line); 
     qCombo.addItem(line, "0"); 
     } 
     myfile.close(); 
    } 
} 

.. i obtenir cette erreur de temps complile

erreur: demande de membre 'addItem' dans 'qCombo', qui est de type non-classe « QComboBox * '

Toute aide serait géniale!

Répondre

2

qCombo est un pointeur. Vous voulez utiliser: qCombo-> addItem (ligne, "0");

1

Never Mind, le passage par référence n'était pas la partie cassée, c'était le fichier ouvert. Je l'ai corrigé. Merci

si quelqu'un est intérêt

void frmVerification::openTextFile(QComboBox* qCombo, QString fileName) { 
    QFile file(fileName); 
    if (file.open(QIODevice::ReadOnly | QIODevice::Text)) { 
     QTextStream in(&file); 
     QString line = in.readLine(); 
     while (!line.isNull()) { 
      //process_line(line); 
      line = in.readLine(); 
      qCombo->addItem(line, "0"); 
     } 
    } 
} 
Questions connexes