Bonjour à tous,

Bon je sèche, alors je viens demander de l'aide .
Je continue à améliorer mon petit programme de pilotage de robot .

Je cherche maintenant à paramètrer le Port série avec des combo-box avant de se connecter .

Par exemple pour la partie vitesse de transmission j'arrive à récupérer la liste pour remplir une combox

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
    // Je récupére les vitesses disponibles
    for (qint32 Vitesse : QSerialPortInfo::standardBaudRates()) {
        ui->Combo_Baud->addItem(QString::number(Vitesse));
    }
et ensuite j'affecte la valeur sélectionnée dans la combobox au paramètre de vitesse :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
  // Je convertie en une valeur int, le texte selectionné dans la combo-box baud
  serial.setBaudRate(ui->Combo_Baud->currentText().toInt()); // Je determine la valeur du baudrate
Je n'arrive pas à faire la même chose, mais avec la parité par exemple.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
serial.setParity(QSerialPort::Parity (ui->Combo_Parite->currentData()) );
Me renvoie l'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
error: cannot convert 'QVariant' to 'QSerialPort::Parity' without a conversion operator
J'ai beau avoir lu et relu :
http://doc.qt.io/qt-5/qserialport.html#Parity-enum

Je n'arrive pas a trouver le bonne syntaxe .
par exemple dois je rentre une valeur ( 0,2,3,4,5,-1) ou du texte ( "NoParity", "EvenParity"...) ?

Si je dois mettre une valeur, comme ma combo box c'est du texte, donc je dois convertir un string en int ?