QDoubleSpinBox mit Exponetial Zahlen (1.24e-24)

Alles rund um die Programmierung mit Qt
Antworten
pospiech
Beiträge: 232
Registriert: 1. September 2006 17:20
Wohnort: Hannover

QDoubleSpinBox mit Exponetial Zahlen (1.24e-24)

Beitrag von pospiech »

Ich habe sehr häufig das Problem, das ich mit Zahlen arbeite die eine Größenordnung im Bereich +-20 Größenordnungen haben (e-20 ... e+20).

Jetzt kann ich in einer QDoubleSpinBox nicht 20 Stellen eintippen. Das wäre auch nicht intuitiv. Mir wäre lieber ich könnte Zahlen mit Exponent eintippen und den SingleStep so einstellen das immer eine Größenordnung hoch und runtergezählt wird. Nur das scheint es ja nicht zu geben.

Wenn ich jetzt dazu eine Klassen von QDoubleSpinBox ableiten wollte - wie müsste ich dann vorgehen? Oder wie sollte ich das sinnvollerweise implementieren?
kitov
Beiträge: 36
Registriert: 29. November 2006 12:24

Re: QDoubleSpinBox mit Exponetial Zahlen (1.24e-24)

Beitrag von kitov »

das musst du schon selbst implementieren,
ableiten von QAbstractSpinBox.
pospiech
Beiträge: 232
Registriert: 1. September 2006 17:20
Wohnort: Hannover

Re: QDoubleSpinBox mit Exponetial Zahlen (1.24e-24)

Beitrag von pospiech »

kitov hat geschrieben:das musst du schon selbst implementieren,
ableiten von QAbstractSpinBox.
Danke für den Hinweis. Ich habe mir mal QDateTimeEdit angeschaut (den Quellcode), da es meinem Problem näher kommt als QDoubleSpinBox. Da wird aber manuell jede Taste und Curserposition abgefangen. So etwas zu implementieren würde mich glatt eine Woche kosten. Das kann ich zeitlich gar nicht aufwenden.
Zonk
Beiträge: 51
Registriert: 17. September 2006 15:28
Kontaktdaten:

Beitrag von Zonk »

dann musst du die Eingabe der Zahl aufsplitten, und für dne Exponent und die Mantisse jeweils eine eigene Spinbox nehmen.

Wenn du das mit den passenden Labels ausschmückst und klug arragniert sieht es sogar intuitiv verständlich aus ( wenn auch nicht schön).

Zonk
Thorsten
Beiträge: 55
Registriert: 29. Dezember 2004 22:47
Wohnort: Aachen

Beitrag von Thorsten »

Vielleicht kannst du damit was anfangen.

Ein Slider mit logarithmischer Scala:

http://qwt.sourceforge.net/class_qwt_slider.html
pospiech
Beiträge: 232
Registriert: 1. September 2006 17:20
Wohnort: Hannover

Beitrag von pospiech »

Ich nutze qwt für die Plots und kenne auch diese Slider. Allerdings geht es mir darum Werte (Konstanten, Numerische Parameter) sehr präzise auf mehrere Kommastellen genau angeben zu können und dafür ist ein Slider nicht das richtige.
pospiech
Beiträge: 232
Registriert: 1. September 2006 17:20
Wohnort: Hannover

Beitrag von pospiech »

Ableiten von QAbstractSpinBox wäre wohl der falsche Weg gewesen. Ich habe jetzt von QDoubleSpinBox und alle virtuellen Functionen reimpementiert. Leider benötige ich ebenfalls die Validationsfunctionalität, welche sich nicht borgen lässt. Damit musste ich diese komplett aus dem Quellcode von QDoubleSpinBox kopieren. (hat jemand eine bessere Lösung?).

Der Quellcode ist am Ende auf über 600 Zeilen angewachsen. Daher präsentiere ich den jetzt nicht hier, sondern auf meiner Webseite:
http://www.matthiaspospiech.de/blog/200 ... -notation/

Jeder Hinweis zur Verbesserung ist willkommen.

Matthias
Antworten