问题标签 [qplaintextedit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
856 浏览

python - QPlainTextEdit 和 QCompleter 焦点问题

我已经阅读了 QCompleter 文档(https://doc.qt.io/qt-5/qcompleter.html),并且尝试为 QPlainTextEdit 实现 QCompleter。

现在我让它像这样工作:

在此处输入图像描述

但问题是,如果你开始写一个在keyword.kwlist创建的列表中的单词,那么它会专注于光标下弹出的弹出窗口,它不会让我继续输入。

但是在 QCompleter 文档页面上将代码从 c++ 转换为 python 时,即使它在下面为我提供了一些单词选择,我仍然可以输入。

我尝试将焦点设置为 self.editor 但这没有用。我需要这方面的帮助以及弹出窗口的位置。现在它有点挡住了这个词的视野。

它的功能应该是这样的:

在此处输入图像描述

但这仅适用于 QLineEdit。

0 投票
1 回答
2610 浏览

c++ - QPlainTextEdit 在一行上有多种颜色

tl;博士:

QPlainTextEdit::appendPlainText(QString)将换行符附加到我的文本小部件。 QPlainTextEdit::insertPlainText(QString) 似乎不受setCurrentCharFormat().

QTextCharFormat 有没有办法在不插入换行符的情况下在收听当前时附加文本

细节

我有一个“终端”样式的小部件,它从子进程的标准输出中获取文本并将其显示在QPlainTextEdit.

在我有颜色内容之前,我可以简单地这样做:

'\033'颜色使用转义字符后跟颜色出现在文本中。我可以检测颜色并适当地设置调色板:

如果每行只有一种颜色,则此方法有效,但如果我的颜色在每行中途发生变化,那么我需要更疯狂一点:

但是,因为我使用appendPlainText(),所以找到的每种新颜色都会给我一个新行。

我尝试替换appendPlainText()为:

然后'\n'在最后添加。但在那种情况下,我不再有任何颜色了。我也试过appendHtml(),但这似乎没有什么不同。

0 投票
1 回答
94 浏览

c++ - QPlainText 的子类不会扩展以填充布局

我不明白为什么 Qt 网站上的 CodeEditor 示例没有按预期工作。每次我运行代码时,它都会像这样显示它,非常小并且不会扩展以占用所有可用空间。有谁知道为什么?我什至尝试设置固定大小、sizepolicy 和最小尺寸。不知道我在这里缺少什么。

在此处输入图像描述

主.cpp:

主窗口.cpp:

代码编辑器.h:

代码编辑器.cpp:

0 投票
1 回答
76 浏览

c++ - 动态更改 qt5 选项卡名称

假设我的 ui 文件中有一个 tabwidget,这就是我现在添加标签的方式:

现在我想知道是否可以随时更改选项卡的名称,例如在类中子类化 QPLainTextEdit 并在文本更改时将信号连接到它时,我想在选项卡上添加一个小星星表示文件已被修改,甚至可能吗?

0 投票
1 回答
302 浏览

c++ - QPlainTextEdit 忽略大多数文本块格式

我想增加 QPlainTextEdit 中段落(文本块)之间的间距,但无济于事。经过实验,我发现虽然一些格式属性(例如,背景颜色)生效,但其他的(例如,边距)被忽略了。

我发现了这个错误报告,但它只提到了QTextBlockFormat::lineHeight()。就我而言,几乎所有的方法QTextBlockFormat::*都被忽略了。一个最小的例子:

除了fmt.setBackground(QColor(Qt::yellow)),其他的都被忽略了。使用 Qt 5.10。

0 投票
1 回答
108 浏览

memory-management - QPlainTextEdit 内存泄漏

我用 Qt 5.9.6 编写了一个简单的应用程序,我运行它并想知道使用的内存正在增长。在跟踪/调试我的应用程序后,我意识到了一些关于QPlainTextEdit 的信息

内存泄漏是针对 qplaintextedit 作为我的应用程序中的暂存器,但每次使用后,我使用clear()函数将其清空以备下次使用。

但是那个暂存器使用的内存不会被释放!

我决定测试一下

我打开了一个新项目,其中包含一个QPlainTextEdit和一个QPushButton(使用 clear() 函数)。

  • 运行后,使用的内存为9.7MiB
  • 在 QPlainTextEdit 中输入了一些长文本,使用的内存是52MiB
  • 按下 QPushButton(clear() QPlainTextEdit),预期使用的内存是9.7MiB,但它是52MiB

我试过deletestatic allocationdynamic allocation ...,有很多方法来管理它,但没有什么不同!

我在这里找到了一些东西,但它无法解决问题。

这是 QPlainTextEdit 中的错误还是我做错了?

0 投票
1 回答
1700 浏览

python - 在 QPlainTextEdit 中使用 tqdm 显示终端输出

我正在尝试找到一种方法来获取 pyqt 应用程序中进度条的结果/演变以及其他打印,例如在 QPlainTextEdit 小部件中。

我面临的问题是进度条可以使用一些更高级的回车,甚至更高级的光标定位,这些大多不被treams 支持。我试过io.StringIO了,但\r保持字面意思。

输出:

翻译成:

需要明确的是,在我的输出中,我不希望每次 tqdm 更新一行,而只希望当前状态,因为它将打印在命令行上。

知道怎么做吗?谢谢!

0 投票
1 回答
57 浏览

python - 如何在 QPlainTextEdit 中添加所需?

我想在我的 QPlainTextEdit 中添加 required ,这样当有一个空白的 QPlainTextEdit 时,将提示用户有一个空白输入。

这是我的示例代码,我想在 QPlainTextEdit 中添加所需的内容。

谢谢你的回答!。

0 投票
0 回答
42 浏览

c++ - QPlainTextEdit 在即将删除选择时通知/挂钩

我有一个 QPlainTextEdit,每当它选择了即将被删除的文本时,我都需要收到通知(原因是我想备份它)。

因此,当文本即将更改但尚未更改时,我需要得到通知(因此textChanged()在更改后没有发送信号)。然后我可以检查是否有选择并备份它。不幸的是,没有一个textChanging(),只有一个textChanged()信号。

在这种情况下我应该挂什么?

0 投票
1 回答
575 浏览

c++ - 如何为 QPlainTextEdit 设置水平溢出?

我正在尝试使用 QPlainTextEdit 但默认情况下,当一行太长时,它会返回到下一行。

有没有办法进行水平溢出(所以有一个滚动条,并且该行“无休止地”继续)?