Ich schreibe meine erste Anwendung auf Qt. Bisher auf einem QLabel
beliebigen Text angezeigt werden ich folgendes wurde mit dem Format zu setzen und den Text:Setzen Sie das Textformat auf Qlabel auf eine Nummer
ui->lat_UAV_label->setText(QString("<span style=\" font-size:18pt;
font-weight:600; color:#0009d8;\">%1</span>").arg(lat * RAD2DEG));
wo „lat“ ist eine Zahl mit doppelter Genauigkeit und „rad2deg“ eine Konstante von Radiant zu konvertieren zu Grad. Ich möchte jedoch nur 2 Dezimalziffern auf dem Etikett anzeigen. Ich habe versucht, es zu tun QString().number
verwenden, aber dann wird das Format Styling verloren:
ui->lat_UAV_label->setText(QString("<span style=\" font-size:18pt;
font-weight:600; color:#0009d8;\">%1</span>").number(lat * RAD2DEG, 'f', 2);
ich andere Wege versucht haben, es zu tun, aber es funktioniert nicht. Ich denke, das sollte viel einfacher sein als das, was ich versuche, aber weil ich neu bin, weiß ich es nicht.
Die [ 'arg' Methode selbst] (http://doc.qt.io/qt-5/ qstring.html # arg-8) hat Argumente, um die Formatierung von Doppel zu setzen –
Ich würde SetFont für QLabel auch statt Schriftart mit Stil festlegen, weil jetzt Ihr Code ziemlich unlesbar ist – demonplus