Länge von List Widget ermitteln
-
Hi,
der folgende Konstruktor sollte eigentlich dafür sorgen, dass im listWidget in der fünften Zeile die Zahl 4 steht, weil die Länge dieses List Widgets bei Aufruf von ui->listWidget->count() ja 4 ist. Da steht aber keine 4 sondern ein merkwürdiges Zeichen (Quadrat). Kann mir jemand sagen warum?MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); ui->listWidget->addItem("Nr.1"); ui->listWidget->addItem("Nr.2"); ui->listWidget->addItem("Nr.3"); ui->listWidget->addItem("Nr.4"); int z = ui->listWidget->count(); QString sz = static_cast<QString>(z); ui->listWidget->addItem(sz); }
-
@theAnfänger77 sagte in Länge von List Widget ermitteln:
QString sz = static_cast<QString>(z);
Was soll das?
-
QString sz = QString::number( z );
Dein Code ruft den Konstruktor
QString( QChar ch )
auf, und der interpretiertz
als ASCII Zeichen. Und die Darstellung für 4 ist halt ein nicht-druckbares Zeichen.
-
Super, vielen Dank!
-
@DocShoe sagte in Länge von List Widget ermitteln:
QString sz = QString::number( z );
Dein Code ruft den Konstruktor
QString( QChar ch )
auf, und der interpretiertz
als ASCII Zeichen. Und die Darstellung für 4 ist halt ein nicht-druckbares Zeichen.Nope das z ein int ist und dafür gibt es diese Überladung: https://doc.qt.io/qt-5/qstring.html#number-1
-
@firefly Ich bin mir ziemlich sicher, dass sich die Aussage auf den static_cast bezog.
-
@manni66 sagte in Länge von List Widget ermitteln:
@firefly Ich bin mir ziemlich sicher, dass sich die Aussage auf den static_cast bezog.
Eher nicht oder wieso hat er in seiner Antwort "QString sz = QString::number( z );" geschrieben?
-
Weil das der richtige Code dafür ist. ("Smiley mit Fragezeichen über dem Kopf" fehlt leider in der Smiley-Auswahl)
-
@firefly das war die Lösung für doofe, die die Doku nicht lesen können (nehme ich an)
-
Verstehe die Diskussion nicht....
static_cast<QString>( z )
ruft den KonstruktorQString( QChar )
auf,QString::number( z )
konstruiert einen QString aus einer Zahl. Was genau ist da jetzt unklar, bzw. was ist die Frage?
-
@DocShoe ich habe keine
-
@DocShoe sagte in Länge von List Widget ermitteln:
Verstehe die Diskussion nicht....
static_cast<QString>( z )
ruft den KonstruktorQString( QChar )
auf,QString::number( z )
konstruiert einen QString aus einer Zahl. Was genau ist da jetzt unklar, bzw. was ist die Frage?Du hast dich ungenau ausgedrückt in deinem ursrpuingspost das war das "Problem"