- Registriert
- 3 Aug. 2014
- Beiträge
- 28.573
Hallo,
ich schreibe gerade an einer Anwendung in C++ mit QT und versuche krampfhaft dynamische Labels zu erzeugen und in eine Layoutform einzubinden...
Zur Zeit verwende ich ein fixes Array von QLabel Pointern um Speicher für die Elemente zu reservieren, allerdings bekomme ich trotz des Hinzufügens in die Form, keine Elemente angezeigt. Ich verwende in QtDesigner eine QVBoxLayout ("layoutSettings") für den Anfang, "ui" ist die Form in der das Layout eingebaut ist.
Folgenden Code verwende ich gerade:
[src=cpp]QLabel* settingLabels[100]; // Nicht schön aber meine Versuche mit QVector/QList <label*> sind ebenfalls gescheitert und haben nichts angezeigt oder sind abgestürzt...
// Etwas Code 'in between'...
for (int i = 0; i < 5; i++) {
settingLabels = new QLabel;
settingLabels[i+1] = new QLabel;
settingLabels->setText("Test");
settingLabels[i+1]->setText("ing");
ui->layoutSettings->addWidget(settingLabels);
ui->layoutSettings->addWidget(settingLabels[i+1]);
}[/src]
Als Resultat kommt nur ein leeres Layout, ich sehe weder in sich verschobene Texte noch sonst etwas. Es wird absolut nichts angezeigt.
Kann mir jemand einen Tip geben was ich falsch mache?
ich schreibe gerade an einer Anwendung in C++ mit QT und versuche krampfhaft dynamische Labels zu erzeugen und in eine Layoutform einzubinden...
Zur Zeit verwende ich ein fixes Array von QLabel Pointern um Speicher für die Elemente zu reservieren, allerdings bekomme ich trotz des Hinzufügens in die Form, keine Elemente angezeigt. Ich verwende in QtDesigner eine QVBoxLayout ("layoutSettings") für den Anfang, "ui" ist die Form in der das Layout eingebaut ist.
Folgenden Code verwende ich gerade:
[src=cpp]QLabel* settingLabels[100]; // Nicht schön aber meine Versuche mit QVector/QList <label*> sind ebenfalls gescheitert und haben nichts angezeigt oder sind abgestürzt...
// Etwas Code 'in between'...
for (int i = 0; i < 5; i++) {
settingLabels = new QLabel;
settingLabels[i+1] = new QLabel;
settingLabels->setText("Test");
settingLabels[i+1]->setText("ing");
ui->layoutSettings->addWidget(settingLabels);
ui->layoutSettings->addWidget(settingLabels[i+1]);
}[/src]
Als Resultat kommt nur ein leeres Layout, ich sehe weder in sich verschobene Texte noch sonst etwas. Es wird absolut nichts angezeigt.
Kann mir jemand einen Tip geben was ich falsch mache?
Zuletzt bearbeitet: