要在QPlainTextEdit中接收用户输入,你可以使用信号和槽机制来实现。首先,连接QPlainTextEdit的textChanged()信号到一个槽函数,然后在槽函数中获取用户输入的文本。
以下是一个示例代码:
#include <QApplication>
#include <QPlainTextEdit>
#include <QDebug>
class MyWidget : public QWidget
{
Q_OBJECT
public:
MyWidget(QWidget *parent = nullptr) : QWidget(parent)
{
QVBoxLayout *layout = new QVBoxLayout(this);
plainTextEdit = new QPlainTextEdit(this);
// 连接textChanged()信号到槽函数onTextChanged()
connect(plainTextEdit, &QPlainTextEdit::textChanged, this, &MyWidget::onTextChanged);
layout->addWidget(plainTextEdit);
}
private slots:
void onTextChanged()
{
QString text = plainTextEdit->toPlainText();
qDebug() << "User input: " << text;
}
private:
QPlainTextEdit *plainTextEdit;
};
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MyWidget widget;
widget.show();
return app.exec();
}
#include "main.moc"
在这个示例中,我们创建了一个自定义的QWidget类MyWidget,并包含了一个QPlainTextEdit作为成员变量。我们将QPlainTextEdit的textChanged()信号连接到MyWidget类的槽函数onTextChanged()上。
当用户在QPlainTextEdit中进行输入时,textChanged()信号会被触发,并调用onTextChanged()槽函数。在该槽函数中,我们使用toPlainText()方法获取用户输入的文本,并进行相应的处理。在这个示例中,我们简单地使用QDebug输出用户输入的文本。
请运行代码,并在QPlainTextEdit中输入一些文本,查看控制台输出结果。
内容由零声教学AI助手提供,问题来源于学员提问