标签: glade

PyGTK 仍然相关吗?

我是 Linux 的新手,但不是应用程序开发的新手。我来自 Mac 背景下的 RealBasic。

我已经接受我需要学习一种新语言来为 Linux 开发(因为 RB 不会在 64 位发行版上运行并且是一种封闭的专有语言),但我想确保我选择了正确的语言。

我一直在研究 Python 并准备继续,直到我读到 PyGTK 随着 GTK 3 的推出而变得过时。这是真的吗?Ubuntu 开发者网站似乎仍然推荐它与 Glade 一起用于 UI,但我想确保我不会学到一些即将消失的东西!

gui python programming application-development glade

11
推荐指数
1
解决办法
1908
查看次数

如何从 /opt 进行 Glade 加载翻译

我创建了一个应用程序,希望通过Ubuntu 应用程序开发人员流程提交。该过程的要求之一是安装后,所有文件都进入该/opt/extras.ubuntu.com/<appname>目录。

通过改变包装并在其他人的帮助下,我已经实现了这一点,但现在我面临一个新问题:/opt从我的应用程序运行的翻译没有被加载。

会发生以下情况:除非另有说明,否则包含应用程序翻译的二进制文件(MO 文件)是从/usr/share/locale(或在 Ubuntu 的情况下,从/usr/share/locale-langpack)加载的,但在我的应用程序中,由于/opt要求,它们安装在/opt/extras.ubuntu.com/qreator/locale.

这在理论上很好,因为gettext允许指定一个替代位置来加载翻译,所以我添加了bindtextdomain调用来实现这一点:

import gettext
from gettext import gettext as _
gettext.bindtextdomain('qreator', '/opt/extras.ubuntu.com/qreator/share/locale/')
gettext.textdomain('qreator')
Run Code Online (Sandbox Code Playgroud)

这在一定程度上很有效:在命令行上输出的所有消息都按预期翻译。但这并没有解决主要问题:从 UI Glade 加载翻译需要再次指定翻译域(相当于gettext.textdomain('qreator')上面的调用),但它不允许指定从哪里加载翻译(即 Glade 相当于bindtextdomain,可悲的是不存在)。这是我正在使用的代码的摘录:

builder = Gtk.Builder()
builder.set_translation_domain('qreator')
# There isn't a way to tell glade to load translations from
# somewhere else than /usr/share/locale here
builder.add_from_file(ui_filename)
Run Code Online (Sandbox Code Playgroud)

这实质上意味着如果您的应用程序安装在/opt.

我几乎被困在这一点上。关于如何使 Glade 从而/opt/extras.ubuntu.com/qreator/share/locale/不是加载翻译的任何想法 …

python application-development glade gettext localization

9
推荐指数
1
解决办法
1278
查看次数

Glade:如何设置旋转按钮的值?

我已经为我的 Python/GTK3 应用程序使用 Glade 做了一些旋转按钮,但我不知道如何设置默认值、更低或更高的值。我该怎么做?

使用以下东西进行开发:

  • 蟒蛇 2.7.3
  • GTK 3
  • 格莱德 3.12.1

1)我需要从脚本中更改内容,因为我需要将默认值和最大值设置为变量;

2) 我之前看过 PyGTK 文档,它不适用于 GTK3;

3)请不要将我引向 GTK3 文档...我无法理解:P

python application-development gtk3 glade

7
推荐指数
1
解决办法
4605
查看次数

如何将 Notebook 添加到 VBox 中的 Box?

我在 Glade 创建了一个空框来添加一个 Notebook。我没有在 Glade 中添加实际 Notebook 的原因是因为我听说您无法在 Glade 中添加页面到 Notebook 中。

因此,在 Glade 中,我在 VBox 的空槽中创建了一个 Box。我正在运行的代码是:

self.box = self.builder.get_object("box")

self.subjects = Gtk.Notebook()
self.box.add(self.subjects)
Run Code Online (Sandbox Code Playgroud)

运行时没有任何反应,除了我相信无论如何都会发生的这些警告:

/usr/lib/python2.7/dist-packages/gi/overrides/Gtk.py:391: Warning: g_object_set_property: construct property "type" for object `Window' can't be set after construction
Gtk.Window.__init__(self, type=type, **kwds)
/usr/lib/python2.7/dist-packages/gi/overrides/Gtk.py:391: Warning: g_object_set_property: construct property "type" for object `NotetakerWindow' can't be set after construction
Gtk.Window.__init__(self, type=type, **kwds)
Run Code Online (Sandbox Code Playgroud)

pygtk application-development pygi glade

7
推荐指数
1
解决办法
1013
查看次数

格莱德替代快速?

在那儿?我一点也不喜欢格莱德。还有其他更好用的吗?我不喜欢 Glade 的一点是,当我犯了一个错误并且我无法撤消以及其他几个问题时。

software-recommendation quickly application-development glade

6
推荐指数
2
解决办法
1868
查看次数

如何让图像出现在 Glade Designer 的按钮上?

不确定这是一个错误还是一个非常烦人的功能,但我无法在 Glade Designer 中的任何按钮上显示图像。

在此处输入图片说明 在此处输入图片说明

是否需要更改某些属性才能强制它显示图像?

gtk quickly application-development glade

6
推荐指数
1
解决办法
1万
查看次数

“快速设计”和 ubuntu 13.10?

我升级到 Ubuntu 13.10,然后我快速安装以开发一些应用程序。

当我运行“快速运行”或“快速编辑”时一切正常,但运行“快速设计”时直接打开和关闭空地。我尝试快速卸载和安装,但什么也没有,当尝试打开我的应用程序目录中的 .ui 文件时,我无法编辑它,因为要求有错误。我的glade版本是3.14.2

在glade中创建新文件glade时它工作正常。

有什么办法可以让我们快速使用 GTK2 而不是 GTK3?或修复强制关闭?

quickly glade 13.10

6
推荐指数
2
解决办法
713
查看次数

为什么 Glade 不让我更改按钮内容?

在 Glade 中,我去添加一个按钮,并尝试添加一个标签/图像;但是,股票按钮和标签字段已褪色,我无法向其中添加任何内容。它为什么这样做?如何让 Glade 允许我向按钮添加内容?

空地按钮问题

quickly application-development glade

5
推荐指数
1
解决办法
2024
查看次数

如何在 Glade 中添加按钮并调整大小

尝试为计算器创建框架。

我添加了使用 2 个框添加 vbox 的窗口。1 个用于显示,另一个用于按钮当我添加 1 个按钮时,它会填满整个面板,我无法调整它的大小。

在 Visual Basic 中,您只需添加一个按钮并调整其大小,或将其拖放到您想要的任何位置。

我只是不知道如何在这里做到这一点。对我来说陡峭的学习曲线。

window-buttons programming gtk glade

5
推荐指数
1
解决办法
6212
查看次数

使用python截取屏幕截图

当我将其作为控制台应用程序运行时,以下代码完美运行

import gtk.gdk
import time

w = gtk.gdk.get_default_root_window()
sz = w.get_size()
print "The size of the window is %d x %d" % sz
pb = gtk.gdk.Pixbuf(gtk.gdk.COLORSPACE_RGB,False,8,sz[0],sz[1])
pb = pb.get_from_drawable(w,w.get_colormap(),0,0,0,0,sz[0],sz[1])

ts = time.time()
filename = "screenshot"
filename += str(ts)
filename += ".png"

if (pb != None):
    pb.save(filename,"png")
    print "Screenshot saved to "+filename
else:
    print "Unable to get the screenshot." 
Run Code Online (Sandbox Code Playgroud)

但是现在我在 ubuntu 应用程序中使用它时(使用快速和空地)它给了我错误消息

 WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-O1o56xxlHA: Connection refused
/usr/lib/python2.7/dist-packages/gobject/constants.py:24: Warning: …
Run Code Online (Sandbox Code Playgroud)

python quickly glade python-2.7

5
推荐指数
1
解决办法
5151
查看次数