问题标签 [tkinter-text]

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 投票
1 回答
57 浏览

python-3.x - Tkinter:在键盘输入上用颜色突出显示选定的文本

我是 Tkinter 的新手,我正在尝试构建一个注释工具,其中我希望用户选择的文本在按下键盘键时以某种颜色突出显示。到目前为止,这是我的代码。

我发布了整个代码,以免我在其他任何地方出错。任何帮助将不胜感激。提前致谢 :)

0 投票
1 回答
206 浏览

python-3.x - 有没有从 tkinter Text 小部件保存文本输入的好方法

我正在构建,在文本小部件中使用 Tkinter 的收据,它在 GUI 中格式正确 在此处输入图像描述

但是当我保存它时,它变成了这样

在此处输入图像描述

文本文件乱七八糟

如何在文本文件中获得类似于 GUI 中的文本格式的文本???这是我的代码。

…………………………………………………………………………………………………………………… ……………………………………………………………………………………………………………………

0 投票
1 回答
50 浏览

python-3.x - 我想在 Tkinter 文本小部件中创建一个 png 格式的图像

我想在 Tkinter 文本小部件中创建一个 png 格式的图像。当我运行我的代码时,它可以工作,但只显示一个白色图像。我该怎么办?

0 投票
1 回答
53 浏览

python - 重做在 Windows 上无法为 Tkinter 文本小部件工作

如果这是一个愚蠢的问题,我很抱歉,但我不确定我在这里做错了什么。撤消和重做在 Linux 上运行良好,但在 Windows 上无法运行。我尝试手动创建绑定(如下所示),但这也没有解决问题。我在下面尝试了这个确切的代码,但重做命令不起作用。我已经研究过这个问题,但我只找到了我已经尝试过的绑定解决方案。

0 投票
1 回答
42 浏览

python - 如何更新索引以滚动到文本框小部件中找到的每个单词?

因此,我需要通过单击按钮在文本框中找到每个匹配的单词添加滚动。这个函数只找到第一个匹配的词。如何将更新后的索引提供给绑定到按钮的函数?

0 投票
2 回答
242 浏览

python-3.x - Markdown 文本突出显示性能问题 - Tkinter

概述

我正在尝试在我的项目的文本编辑器中添加 markdown 语法突出显示,但我在使其用户证明可以这么说时遇到了一些问题,同时对性能友好

基本上,我在这之后——来自 Visual Studio Code 的降价:

在此处输入图像描述

我说的是粗体、斜体、列表等的简单突出显示,以指示用户预览其降价文件时将应用的样式。

我的解决方案

我最初为我的项目设置了此方法(针对问题进行了简化并使用颜色使样式更清晰以进行调试)

我推断,通过删除每个 KeyRelease 的所有格式,然后重新扫描当前行,它减少了被误解的语法数量,如粗体斜体为粗体或斜体,以及标签堆叠在一起。这适用于一行上的几个句子,但如果用户在一行上输入大量文本,性能会迅速下降,需要等待很长时间才能应用样式——尤其是当涉及到许多不同的 markdown 语法时。

我使用 Visual Studio Code 的 markdown 语言突出显示作为比较,它可以在一行上处理更多的语法,然后再出于“性能原因”删除突出显示。

我知道这是对每个 keyReleaee 进行的大量循环,但我发现替代方案要复杂得多,同时并没有真正提高性能。

替代解决方案

我想,让我们减少负载。每次用户键入诸如星号和 m-dashes 之类的降价语法时,我都测试过检查,并对已编辑的任何标签(标签范围内的键释放)进行验证。但是用户输入需要考虑很多变量——比如将文本粘贴到编辑器中时,因为很难确定某些语法组合对周围文档降价的影响——这些都需要检查和验证。

有没有更好更直观的方法来突出我还没有想到的降价?有没有办法大大加快我最初的想法?还是 python 和 Tkinter 根本无法足够快地完成我想做的事情。

提前致谢。

0 投票
1 回答
118 浏览

python - 如何获取当前行的行索引

我正在根据从 YouTube 教程中获得的基础制作测试编辑器。我试图突出显示python的语句,但是当我写一个语句时,它会为所有行着色,我认为问题在于我使用的索引。

这是代码:

如何获取语句所在行的索引?

0 投票
1 回答
121 浏览

python - 如何在 tkinter 文本框中使用带有 html 标签的文本,或更改它以使其在 tkinter 标签中工作?

我收到了很多文本,并被要求在 tkinter 应用程序中显示它。文本有很多 html 标签,例如<em>...<\em><sup>... <\sup>,其中文本需要斜体或上标。

tkinter 有没有内置的方法来做到这一点?如果不是,是否可以编写一个函数,例如,将标签之间<em>的所有文本斜体,然后删除标签?

我知道我可以通过执行以下操作来删除标签:

但我真的需要,至少,<em>在删除标签之间的文本之前将它们斜体。

我是 tkinter 的新手,我一直在看很多教程和谷歌搜索解决方案,但似乎 tkinter 不能自然地使用 html 标签,我找不到任何解决方案。

编辑:

我需要在常规的 tkinter 文本小部件中显示它。

我知道我可以使用 tkinter 的font方法slant=italic将文本框中的文本设置为斜体。我只需要知道一种将参数设置为<em>标签之间所有内容的方法。

0 投票
1 回答
134 浏览

python - Tkinter:tk.Text 小部件中的高度/宽度缩放问题

我似乎无法让此文本上的滚动条起作用。文本会滚动到一定程度,但之后不会出现。我相信文本小部件的高度不是我想要的。例如,下图只显示了遗伝子实际结果的一半左右(我可以通过尝试从框架中间的一段文本拖动到底部来找到)。宽度也与我想要的框架大小不同:数字 23 只是看起来可行的东西。

如果我做

...宽度变得太大了。我原以为它只会占用框架的大小,即 240。

注意SEARCH_RESULTS_TEXT_FRAME是红色的框架。

相关代码:

框架的相关图像。 请注意,它位于文本条目的后面(红色)

如何让文本小部件仅占用框架的宽度和框架的高度,从而允许滚动?

0 投票
1 回答
74 浏览

python - tkinter.Text.insert 中的索引

为什么我在错误的文本索引“1”中出现错误

工作正常?