Изучаю qt на начальной стадии.
Есть код(немного измененный из книги Макса Шлее):
#include <QtWidgets>
// ----------------------------------------------------------------------
int main(int argc, char** argv)
{
QApplication app(argc, argv);
QTextEdit* txt = new QTextEdit;
QTextEdit* txttwo = new QTextEdit;
QWidget wgt;
QLabel* lbl = new QLabel;
QString stri = "123";
txt->setHtml("<HTML>"
"<BODY BGCOLOR=MAGENTA>"
"<H2><CENTER>Gnome Poem 3: Magic Magic</CENTER></H2>"
"<FONT COLOR=BLUE>"
"<P ALIGN=\"center\">"
"<I>"
"Magic! Magic!<BR>"
"Are you here?<BR>"
"Abra-ca-dabra!<BR>"
"We appear.<BR><BR>"
"Magic! Magic!<BR>"
"Gnomes are we.<BR>"
"Magic gnomes<BR>"
"Of mystery.<BR>"
"..."
"</I>"
"</P>"
"</FONT>"
"</BODY>"
"</HTML>"
);
txttwo->setText(txt->toHtml());
//QObject::connect(txttwo,SIGNAL(textChanged()), txt,SLOT(clear()));
QObject::connect(txttwo,SIGNAL(textChanged()), txt,SLOT(setHtml(stri)));
QHBoxLayout* pvv = new QHBoxLayout;
pvv->addWidget(txttwo);
pvv->addWidget(txt);
pvv->addWidget(lbl);
wgt.setLayout(pvv);
wgt.show();
return app.exec();
}
Хочу при редактировании txttwo записывать в txt строку "123"
qt выдает:
QObject::connect: No such slot QTextEdit::setHtml("123") in ..\TextEdit\main.cpp:55
Некоторые другие слоты работают. Такие как clear() например. А вот слоты setHtml, setPlainText не работают. Почему так? Подскажите правильный вариант, без написания дополнительного слота?
Спасибо заранее.