Seite 1 von 1

QLineEdit Eingabe mit eigener Ausnahme überprüfen

Verfasst: 14. Dezember 2017 19:02
von hubi1182
Hallo zusammen,

kann mir jemand erklären wie ich mit einer eigenen Ausnahme überprüfen kann ob ich in einem QLineEdit Buchstaben eingegeben habe?
In dem QLineEdit dürfen ausschließlich Zahlen eingegeben werden.
Wenn ein Buchstabe eingegeben wird soll eine MsgBox mit einem Hinweistext ausgegeben werden.

Für Tips oder Beispiele wäre ich sehr dankbar.

Danke. Gruß

Re: QLineEdit Eingabe mit eigener Ausnahme überprüfen

Verfasst: 14. Dezember 2017 19:25
von Christian81
Wenn Du es beim Verlassen prüfen willst -> Signal QLineEdit::editingFinished(). Wenn es direkt bei der Eingabe passieren soll -> QValidator oder wenn es nur Integer sein sollten -> QIntValidator

Re: QLineEdit Eingabe mit eigener Ausnahme überprüfen

Verfasst: 15. Dezember 2017 21:40
von hubi1182
Hallo Christian,

danke für die schnelle Antwort.
Hier mal der code den ich bisher erstellt habe:

void Test::on_lineEdit_editingFinished()
{
QLineEdit *eingabe1; //Zeiger vom Typ QLineEdit?

eingabe1 = ui->lineEdit; //QLineEdit an Zeiger übergeben.

try //Zeiger überprüfen
{
eingabe1;
}

catch (const char *eingabe1) //Wenn ein Buchstabe eingegeben wird soll die MessageBox angezeigt werden
{
QMessageBox::information(this, "Hinweis", "Die Umwandlung ist fehlgeschlagen.\nSie haben flogrnden Wert : " + eingabe1->text());
ui->lineEdit->clear();
ui->lineEdit->setFocus();
}
}

Funktioniert halt nicht so wirklich. :(
Hast Du vielleicht ein Beispiel in dem gezeigt wird wie das genau angewendet wird?

Danke. Gruß

Re: QLineEdit Eingabe mit eigener Ausnahme überprüfen

Verfasst: 16. Dezember 2017 08:17
von Christian81
Ich habe hnter die Funktionen extra Links hinterlegt. Da kann man mal draufklicken: http://doc.qt.io/qt-5/qintvalidator.html#details http://doc.qt.io/qt-5/qtwidgets-widgets ... ample.html