Я пытаюсь запустить другую страницу QML из своего кода C++, подключившись к слоту clicked() кнопки в моем QML, но это не работает.
Button {
objectName: btnLogin
text: qsTr("Login")
id: btnLogin
}
И С++
QObject *newButton = root->findChild<QObject*>("btnLogin");
QObject::connect(newButton, SIGNAL(clicked()), this, SLOT(loginClick()));
Слоты в моем файле hpp:
public slots:
void loginClick();
И мой метод щелчка:
void GConnectBB::loginClick() {
int i = 0;
Button *newButton = root->findChild<Button*>("btnLogin");
if (newButton)
newButton->setProperty("text", "New button text");
}
QObject *newButton = root->findChild<QObject*>("btnLogin");
Является нулевым, когда я проверяю отладчиком. Я очень плохо разбираюсь в C++ и совершенно новичок в Qt, пожалуйста, будьте осторожны :) Что я могу делать неправильно?