Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ QTextEdit插入文本_C++_Qt - Fatal编程技术网

C++ QTextEdit插入文本

C++ QTextEdit插入文本,c++,qt,C++,Qt,如何在有焦点的情况下更改QTextEdit中的内容?如果我试图在QTextEdit处于焦点时更改内容,我的程序将终止。如果使用clearFocus(),则没有任何更改 connect(ui->myTextEdit,SIGNAL(textChanged()),this,SLOT(hTextChanged())); . . . void hTextChanged() { ui->myTextEdit->insertPlainText("blah"); } 编辑:当用户继续

如何在有焦点的情况下更改QTextEdit中的内容?如果我试图在QTextEdit处于焦点时更改内容,我的程序将终止。如果使用clearFocus(),则没有任何更改

connect(ui->myTextEdit,SIGNAL(textChanged()),this,SLOT(hTextChanged()));
.
.
.
void hTextChanged()
{
    ui->myTextEdit->insertPlainText("blah");
}

编辑:当用户继续输入时,我需要在QTextEdit中更改文本(它的颜色),如何在没有textChanged()信号的情况下执行此操作?

通过将信号连接到导致信号发射的插槽,您的代码段看起来像一个无限循环

关于您的更新:
要为文本着色,请使用QSyntaxHighlighter对象(请参阅Qt文档)。

您应该发布一些重现问题的代码,请发布完整的演示。通过将信号连接到导致信号发射的插槽,代码段看起来像一个无限循环。hTextChanged()实际上是一个插槽吗?connect()成功了吗?嗯,你是对的,我做了递归。。。Damnreward更新:你是指整个文本的颜色还是只指键入字符的颜色?键入字符的颜色,我需要用不同的颜色给不同的标签上色