问题标签 [gtk-textbuffer]

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 回答
2331 浏览

python - 在 pyGTK 的 TextView/TextBuffer 中插入粗体字符

我有一个 TextView 和一个与之关联的 TextBuffer。

当用户按下 Ctrl+b 时,我希望文本开始以粗体输入,直到用户再次按下 Ctrl+b。

我正在尝试自己的方法,但没有成功,然后我在邮件列表中找到了这篇文章: http ://www.daa.com.au/pipermail/pygtk/2009-April/016951.html

和我一样的问题,有人给出的解决方案是

您的应用程序必须处理管理 TextBuffer 中的标签所需的簿记。当在光标处插入文本时,您的应用程序必须捕获指示正在插入文本的信号,然后将所需的标签应用于插入的文本。我认为这可以通过捕获TextBuffer“插入文本”信号(使用connect_after()确保文本已被插入)然后将标签应用于回调中的文本来完成。

所以我尝试了这个。这是我的 textbuffer.py

每当有人按下 Ctrl+b 时,都会从主脚本调用方法 make_bold()。

从理论上讲,这正是邮件帮助所说的那样。但不工作。我键入时文本未显示为粗体。如果我按向左箭头并向后移动光标,然后键入一个字符,则光标右侧的字符会变为粗体。

我怎样才能完成这项任务?

另外,有人可以在其中添加标签“textbuffer”吗?我无法创建新标签,我觉得该标签比“textview”更准确

0 投票
1 回答
2017 浏览

python - gtk 文本迭代器的问题

我有一个使用 gtk 在 python 中编写的应用程序,我希望它自动关闭括号'并将光标放在它们之间问题是我随机收到以下错误并且程序崩溃:

该区域周围的代码是这样的:

谁能告诉我如何解决这个错误?我找不到任何其他 fmethods 将光标放在括号之间的那个特定位置

0 投票
2 回答
1401 浏览

gtk - 获取 GtkTextView 行号

如何GtkTextBuffer根据当前光标位置获取行号?让我们假设设置了 wrap-mode 并且我在第 3 行中间的某个位置。但是我怎样才能让程序告诉我我在第 3 行呢?

0 投票
1 回答
1390 浏览

c++ - 从 GTKMM 2.4 迁移到 GTK3.0 时出现 Gtk::TextView::modify_font 问题

我有一个使用 gtkmm 2.4 的应用程序,它运行良好,直到我最近改用 gtkmm 3.0。我在使用 g++(版本 4.6.1)时遇到问题,它不断吐出错误“错误:'class Gtk::TextView' 没有名为'modify_font'的成员”。当我将构建包含恢复到 gtkmm 2.4(通过更改pkg-config gtkmm-3.0 --cflags --libs回 gtkmm-2.4)时,情况并非如此。

我跟着标题返回(从代码::块中),函数标题肯定在那里。看起来 Gtk::Widget::modify_font 也没有贬值。

关于 Gtk::TextView 我的类层次结构的示例:

0 投票
2 回答
2072 浏览

python - 通过函数将文本插入 TextBuffer - python

我有以下问题:

如何在我的文本缓冲区中插入文本?

接口.py

并在文件中导入“DrawCommandView”

命令.py

但我不断收到此错误:

谢谢你的帮助!

问候

0 投票
1 回答
1073 浏览

python - 在用户输入 gtk.TextBuffer 时获取文本

我想知道是否有一种方法可以TextBuffer在用户输入时打印输入。我曾尝试使用该insert_text信号,但它似乎正在打印出输入后面的一个字符。

到目前为止我有

上面的代码在实际输入的内容后面打印出缓冲区 1 字符。

我想要的功能是这样的:

如果用户输入“你好”

输出应该是

目前正在打印

0 投票
2 回答
1784 浏览

python - Glade GTK TextBuffer 更改或设置颜色

我有一个包含文本视图的进程窗口。Textview 有一个文本缓冲区。使用以下代码,我可以在此 textbuffer--> textview--processwindow 中打印一些文本。

我想更改 TextBuffer 的颜色。我怎么能这样做?

0 投票
1 回答
5777 浏览

python - Python Gtk TextView 在末尾插入文本

我想在最后插入文本到文本缓冲区...我使用这个:gtk.TextBuffer.insert_at_cursor

但是如果我点击那里的文本,新的出现在光标处......

我怎样才能在最后添加文字?

0 投票
1 回答
1218 浏览

c++ - C++ GTKmm - 如何获取我的 TextView (TextBuffer) 的内容

我正在 Linux 上学习 GTKmm (C++)。

我想通过按下按钮来获取 TextView 的内容。

代码std::cout << m_textBuffer->get_text();没有向控制台输出任何东西,我在官网上也找不到足够的解释。

看来我需要使用迭代器,但试图m_textBuffer->start()在函数中这样做get_text()尝试这样做告诉我 start() 不是 TextBuffer 的函数,也不是 end() 等价的。

控制台输出一些可能相关的警告:

Gtk-CRITICAL **: gtk_text_buffer_get_iter_at_mark: 断言 'GTK_IS_TEXT_MARK (mark)' 失败 Gtk-CRITICAL **: gtk_text_layout_get_line_yrange: 断言'_gtk_text_iter_get_btree (iter) == _gtk_text_buffer_get_btree (layout->buffer)' 失败

在 GUI 构造函数中,我有这个:

0 投票
1 回答
59 浏览

textview - 如何将 mp4 插入 gtk.TextBuffer pygtk 2.0

使用 pygtk 2.0。

我知道我可以将图像插入到 gtk.TextBuffer() 中,但我找不到任何关于插入小 mp4 的信息。

我想到了一个动画 gif(如果可能的话),但我认为他们想改用 mp4 文件。

如果有人知道,请指教。预先感谢。