Comment faire pour convertir la chaîne en tant qwidget en qt. Doit accéder dynamiquement .. Toute autre méthode doit convertir la chaîne en QWidget.comment convertir la chaîne en tant que qwidget en qt
Exemple de code:
QWidget *widget1 = new QWidget();
QWidget *widget2 = new QWidget();
QPushButton *next = new QPushButton("next");
QPushButton *prev = new QPushButton("prev");
stack->addWidget(widget1);
stack->addWidget(widget2);
stack->setCurrentIndex(0);
QObject::connect(next, SIGNAL(clicked()), this, SLOT(NextBt()));
QObject::connect(prev, SIGNAL(clicked()), this, SLOT(PrevBt()));
void MainWindow::NextBt()
{
std::string str1 = "widget" + std::to_string(1);
QString str = str1.c_str(); // "widget1"
//How to implement QWidget object as conversion of String here.
//for dynamically i want to remove the already added widget.
stack->removeWidget(str);
str->deleteLater();
stack->setCurrentIndex(1);
}
Salut Vladimir, m obtenir erreur de ** parentWidget-> findChild ** Comment détecter la chaîne est adaptée ici déjà créé que ** widget1 ** .. –
Ok, c'est parce que vous n'avez pas défini de perent pour vos widgets. Faites ceci: 'QWidget * widget1 = nouveau QWidget (this);' –
oh merci Vladimir, la méthode QMetaObject :: invoke est utilisée pour appeler la méthode en tant que chaîne que j'ai utilisée et fonctionne .. ** Mais nous pouvons utiliser la chaîne comme QWidget .. Désolé , je ne peux pas trouver une solution celui-ci? ** J'ai frappé ici .. pouvez-vous m'aider quel détail. –