Qt :: Wie der Text in einem QSpinBox senken
-
20-09-2019 - |
Frage
Ich verwende eine Spinnbox mit einer benutzerdefinierten Schriftart, die in der Spinnbox zu hoch aussieht. Wie verschiebe ich den Text senken?
Ich habe bereits reimplementiert QStyle
und machte die Schrift niedriger in einem anderen Widget, aber ich kann nicht finden, wo es mit dem Drehfeld zu tun. Es muss ein QRect
irgendwo sein, wo man nur die Spitze davon bewegen kann, aber ich weiß nicht und kann nicht scheinen zu finden, wo es ist.
Lösung
Qt gibt an einem QStyle::SC_SpinBoxEditField
, das scheint zu sein, was Sie ändern möchten. Wenn ich mich richtig von vor ein paar Jahren erinnern, als ich Sachen mit Stilen tun, sollten Sie in der Lage sein, für die Substeuerelement einlassen Optionen Haken, die die rect einschließen würde, in dem angenommen wird, gezogen werden. dass ändern könnte das gewünschte Ergebnis erhalten. Wenn nicht, ist es ein Ort für Ihre Antwort gesucht werden soll.
Andere Tipps
Dies ist eher eine Vermutung als eine positive Antwort, aber Sie könnten dies tun können, mit Stylesheets:
spinbox->setStyleSheet("QSpinBox { bottom: -2px;}");
Im Idealfall würde es nur für den Text ein Substeuerelement oder etwas, aber die
Sie können tun: Ich hoffe, dass diese Hilfe. spinBox->setAlignment(Qt::AlignCenter);//Or the Align Flag that you want