QString als Zahl in Hexa konvertieren
-
Hallo,
ich versuche verzweifelt eine Funktion zu schreiben die eine von mir eingegebene Zahl in Hexadezimal darstellt. Ich benutze dazu folgende Funktion.
void BinaerRechner::ausrechnenHex(){ QString a; a = (ui->dezimalEingabe->text()).toAscii().toHex(); ui->hexaEingabe->setText(QString("%1").arg(a, 0,"f", 0)); }
Was sehr gut klappt ist die Umwandlung von Text in Hexadezimal, doch wie konvertier ich den String a zu einer Zahl (also vllt double).
Danke schonmal
-
Also wenn ich dich richtig verstehe, erzeugst du einen QString a, in den du dann aus deinem Eingabefeld direkt einen HexString packst. Dieser ist ja nun schon in HexFormat?! Deshalb kannst du ihn doch direkt in das Ziel werfen:
ui->hexaEingabe->setText(a);
setText erwartet doch einen QString. Oder macht er bei dir doch wieder eine implizite Rückkonvertierung oder so einen scheiß...?
-
Ja stimmt das funktioniert wunderbar und ist wesentlich kürzer, danke dir.
Wüsstest du evtl wie ich den QString a in einen Integer umwandeln kann um evtl bei "dezimalEingabe" auch Zahlen eintragen kann und mit ihnen arbeiten?
-
QString hat eine Methode toInt()!