问题标签 [gtk]

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 投票
3 回答
4598 浏览

emacs - 如何让我的 Emacs *总是*在 X11 上使用 6x13

我最近宣布 .emacs 破产并重新组织了我的 init 内容。在这个过程中,我删除了我多年来积累的所有 hacky 字体选择的东西,认为在最现代的 emacs 版本中可能有更简单的方法来完成我想要的。

让我们暂时忽略这样一个事实,即我也在 Mac OS X(GUI+终端)下运行 emacs,偶尔在 Windows 上运行 emacs,只关注 X11 案例:

(背景:从我记事起,6x13 字体就一直是 X11 的一部分。(又名 misc-fixed semi-condensed ...)。它是一种位图字体。)

  • 我希望 emacs 始终使用 X11 位图字体 6x13。(这给了我上网本上相邻的两个缓冲区。)
  • 我不想在我的上网本上看到 DejaVu Sans Mono 16pt 或默认出现的任何内容(它很大!)
  • 我希望每个新框架和窗口都使用这种字体。
  • 我希望派生面孔(如 org-mode-column)使用 6x13 字体,而不是神秘地切换回 DejaVu Sans Mono
  • 我不在乎 GNOME 和 X11 认为我的屏幕的逻辑 DPI 是什么。我想要 6x13。
  • 当我远程进入我的上网本(NX 机器)时,我不想看到 6x10。我想要 6x13。
  • 如果有任何疑问:我想要 6x13

实现这一目标的规范方法是什么?

在一些聪明人告诉我菜单之前:选项>>设置默认字体:结果对话框甚至不提供位图字体,因此无法选择 6x13。此外,它并没有解决 org-mode 的问题:table-views 仍然会出现错误的字体。

0 投票
6 回答
1239 浏览

c - 实施无中断自动保存

为了添加自动保存功能,我一直在修改 Xournal 的代码。我最初的实现非常愚蠢:每 60 秒左右进行一次保存。该功能表面上有效。

然而,在测试了一段时间后,我注意到当自动保存运行时,应用程序会暂时冻结,如果你正处于笔画的中间,这会很烦人。我试图弄清楚如何解决这个问题。

我想到的一种可能性是自动保存在自动保存之前检查笔是否正在触摸屏幕;如果它被触摸,请附加一个仅在笔抬起后一秒钟安排的一次回调。(如果发生同样的事情,重复)。另一种可能性是充分优化保存功能,以便没有间隙(似乎不太可能)。

有人对此有什么建议吗?Xournal 使用 Gnome/GTK 工具包,并用 C 编写。

更新:我实现了反破坏逻辑,我对由此产生的自动保存粒度和性能非常满意。其中一个时间线程(谢天谢地)是不必要的!谢谢大家的建议。

0 投票
7 回答
13355 浏览

c++ - 我应该学习 GTK+ 还是 GTKMM?

我是一名 C# 程序员,大约 2 年前开始使用 ubuntu。我想学习 C 或 C++ 中的 GUI 编程。我真的不喜欢单声道,它往往会在我的系统上崩溃。我对 C++ 有基本的了解。我从未在 C 中工作过,但它看起来很酷。我应该学习/使用哪个工具包?给出每个的优点/缺点。谢谢!

0 投票
3 回答
4941 浏览

c - Vala(类 C# 语言)编译成 C?

我是一名 C# 开发人员,偶然发现了一种新的 linux 编程语言,称为 vala。它的语法几乎与 C# 完全相同,非常棒。我从来都不是 Mono 的忠实粉丝。这允许程序员以 C# 风格的语言编写 GTK+ 应用程序。我的问题是:vala 会编译成 C 吗?

0 投票
1 回答
627 浏览

python - 如何在 Gtk2 中更改 MenuItem 的显示文本?

我需要更改 MenuItem 的显示文本。有没有办法在不删除 MenuItem 然后添加另一个具有不同文本的情况下做到这一点?

0 投票
8 回答
1567 浏览

python - 是否有一个 Python 库可以在不编写太多代码的情况下构建用户界面?

几年以来,我一直在用 Python 编写编辑前端,我厌倦了每次都对窗口或对话框的每个 UI 细节进行微观管理。

有没有一种技术可以让我指定 GTK+ Glade 设计的界面与 SQLite 数据库的表和记录之间的关系来完成所有中间人的工作?它应该让我免于手动编写事件处理程序、输入评估器和视图更新的工作。

有问题的技术只是示例,但我想尽可能坚持使用 Python。

0 投票
2 回答
792 浏览

python - 是否有用于轻松编写可缩放 UI 的 Python 库?

我的下一个工作将主要集中在处理在二维可缩放平面或画布上组织时最容易理解的数据,而不是使用列表和属性表单。

该库可以基于 OpenGL、GTK+ 或 Cairo。它应该允许我:

  • 用矢量形状和文本构建小部件(甚至可能基于 SVG?)
  • 将这些小部件排列在 2D 平面上
  • 捕获与小部件相关的事件
  • 深入放大小部件以显示其他数据
  • 在树中排列小部件
  • 流畅地动画小部件

如果它也允许一些数据绑定或模型/视图概念,那也不会受到伤害。

0 投票
1 回答
457 浏览

python - 在 GTK 中,我应该为剪贴板粘贴和字符插入捕获哪些信号?

我有一个带有 TextView 的窗口,我想在用户粘贴一些文本时执行一些操作。

我还想知道当用户在 TextView 中按下一个键时我应该捕获什么信号才能执行某些操作。

你能告诉我我必须连接的信号是什么吗?

0 投票
1 回答
2694 浏览

ruby - 如何在运行时将页面添加到 Gtk Notebook 小部件?

我有以下代码:

基本上,它是一个包含按钮和笔记本小部件的窗口。当我按下按钮时,我希望能够向笔记本小部件添加新页面/标签。然而,什么也没有发生。我应该手动进行某种重绘吗?我在滥用笔记本小部件吗?如何在运行时添加选项卡?

0 投票
6 回答
1126 浏览

ruby - 我应该为轻量级 IDE 使用哪些设计模式?

我正在编写一个轻量级的 IDE。我为这个任务选择了 Ruby+Gtk2。我已经有了它的最小原型,但是现在,大部分代码都在我的窗口类中。我很快就会开始研究“真正的交易”,但我想知道我应该使用什么设计模式。我也在计划插件支持,以便应用程序可扩展。欢迎任何想法,但请讨论您的选择。

请记住,这是一种脚本语言。我不确定 Java 的所有设计模式是否都适用于此。