标签: pygtk

pygtk中按钮的悬停事件触发函数

我想当鼠标悬停在按钮上时更改按钮的文本,

喜欢这个http://www.youtube.com/watch?v=l7vCf_lvUsY

如何在pygtk中鼠标悬停在按钮上时添加事件

我在文档中找不到这个

python events pygtk button

2
推荐指数
1
解决办法
1581
查看次数

如何将行追加到 Gtk.ListStore?

我试图将我的应用程序从 python2.7 pyGTK 切换到 Python3 和 pyGObject,并且很难将行附加到我的 Gtk.ListStore :/

这段代码:

#!/usr/bin/env python3

from gi.repository import Gtk

listStore = Gtk.ListStore(str)
itr = Gtk.TreeIter()
listStore.append(itr)
listStore.set_value(itr, 0, 'Its working')
Run Code Online (Sandbox Code Playgroud)

总是给我错误:

Traceback (most recent call last):
  File "./test.py", line 7, in <module>
    listStore.append(itr)
  File "/usr/lib/python3/dist-packages/gi/overrides/Gtk.py", line 1017, in append
    return self._do_insert(-1, row)
  File "/usr/lib/python3/dist-packages/gi/overrides/Gtk.py", line 1008, in _do_insert
    row, columns = self._convert_row(row)
  File "/usr/lib/python3/dist-packages/gi/overrides/Gtk.py", line 850, in _convert_row
    if len(row) != n_columns:
TypeError: object of type 'TreeIter' has no len()
Run Code Online (Sandbox Code Playgroud)

到底是怎么回事?如何将新行追加到 Gtk.ListStore 中?

python pygtk pygobject gtk3

2
推荐指数
1
解决办法
3767
查看次数

pygtk中connect()和connect_after()的区别

我不知道pygtkconnect()connect_after()pygtk之间有什么区别。有人可以用示例代码解释这一点。

谢谢。

gtk pygtk

2
推荐指数
1
解决办法
1243
查看次数

在 Python GUI (GTK) 中拖放文件

我想编写一个小应用程序,它接受选定数量的文件,并存储所有内容的路径以供将来使用。

基本上:

例如,从 Nautilus 中选择混合(图像、音频、视频)文件(在本例中),将它们拖放到此 GUI 中,并获取要写入列表中的每个元素的绝对路径。

程序本身根本不是问题,但我在最简单的任务上失败了,也许:创建一个 GUI(我选择了 GTK,但一切都会好起来,只需要完成工作)谁接受元素并存储他们。

我正在玩 Glade,但我什至不确定这是否是正确的选择。

有人可以帮助我构建这个 GUI 或指出一些资源吗?

python gtk pygtk

2
推荐指数
1
解决办法
2303
查看次数

使用GTK +平滑动画

我正在创建一个网络动画师(类似于nam,如果你之前使用过它).

基本上,我在GTK + DrawingArea上有节点表示为小点,我更新这些节点的位置并在循环中重绘DrawingArea.

生成的动画很快,但不流畅(有很多闪烁).这可能是因为我在每帧之前用一个纯色填充DrawingArea.

你觉得我怎么能最好地解决这个问题?我应该预先渲染帧到Pixbufs吗?有更好的解决方案吗?

这是我当前的绘图代码(使用PyGTK):

rect  = self.drawing_area.get_allocation()
style = self.drawing_area.get_style()

pos   = [n.position_at(self.t) for n in self.nodes]

self.drawing_area.window.draw_rectangle(style.bg_gc[gtk.STATE_NORMAL], True,
                                        0, 0, rect.width, rect.height)

for p in pos:
    self.drawing_area.window.draw_arc(style.fg_gc[gtk.STATE_NORMAL], True,
                                      rect.width  * (p.x / 2400.0) - NODE_SIZE/2,
                                      rect.height * (p.y / 2400.0) - NODE_SIZE/2,
                                      NODE_SIZE, NODE_SIZE,
                                      0, 64 * 360)
Run Code Online (Sandbox Code Playgroud)

其中self.t是当前时间,它在循环中递增.

gtk animation pygtk

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

如何使gtk中的两个元素具有相同的大小?

我正在使用pyGTK.我想布置一个大的元素,每边有2个较小的元素.出于美学原因,我希望2个较小的尺寸相同.实际上,它们相差几个像素,因此中间元素不会居中.

我尝试使用带有3个单元格的gtk.Table,但是uniform = True没有达到预期的效果.我尝试通过制作8个单元来搞乱它,然后让中心单元占用更多单元,但它不能很好地工作.有没有办法做到这一点?

python gtk layout pygtk

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

如何在pyGTK超时中调用函数?

当我尝试使用pyGtk中的超时调用函数时,我收到错误消息TypeError: second argument not callable.我想做的就是在超时内调用一个非常简单的函数.为了说明我的问题,我只是准备了函数do_nothing来说明我的问题.

def do_nothing(self):
    return True

# Do interval checks of the timer
def timed_check(self, widget):
    self.check_timing = gobject.timeout_add(500, self.do_nothing())
Run Code Online (Sandbox Code Playgroud)

这不起作用......

我究竟做错了什么?

python pygtk

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

无法在Python中导入GST

我陷入了困境.我正在遵循以下教程(特别是6.4.2)

http://majorsilence.com/pygtk_audio_and_video_playback_gstreamer

我正在运行Python 2.7,PyGTK 2.24和GStreamer WinBuilds 10.7(主安装程序和SDK).

当我尝试编译程序时,我收到以下错误:

回溯(最近一次调用最后一次):文件"",第1行,在导入gst文件"C:\ Program Files\OSSBuild\GStreamer\v0.10.6\lib\site-packages\gst-0.10\gst__init __.py",line 193,来自_gst import*ImportError:DLL加载失败:找不到指定的模块.

如何导入gst模块?(记住你,我查了一下,pygst导入了.)

先感谢您!

python pygtk gstreamer

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

用于查询远程数据库的应用程序的python gui工具包的注意事项?

我知道以前曾有人问过这个问题,但是这些问题通常都没有具体的细节,并且会给出类似“这取决于您要执行的操作...”之类的答案,因此此应用程序的主要要旨是它可以检索远程数据(例如文字)和对象(例如图片)。

由于PHP和python是两种编程语言,因此我感到很自在,我认为python更适合桌面gui应用程序。我正在创建桌面音乐播放器,下面是一些我要介绍的技术规格:

  • 一种登录结构,可针对远程数据库(这将在mysql中)对用户凭据(如Spotify,Skype,League of Legends)进行身份验证。
  • 一个客户端SQLite数据库,用于存储歌曲的文件名,文件路径和id3标签,因此在启动时,该应用程序会连续显示每首歌曲以及歌曲的长度,艺术家,专辑和流派(类似于iTunes)
  • 检索远程图像并将其显示在应用程序的框架内(例如,Skype会显示某人的个人资料图片。)
  • 必须是跨平台的(至少在Windows和Mac中是这样),在不同的操作系统中看起来是本机的,但是本机的外观应该容易被自定义样式覆盖(例如带有渐变的圆形按钮)。
  • Windows和Mac的编译应该相对简单

在流行的python gui工具包中,例如PyQt,PyGTK,Tkinter,wxPython,Pyjamas,PyGObject和PySide,它们非常适合我的应用程序,为什么?为什么其他都不很适合这些规格?哪个拥有良好的文档和活跃的社区?

python pygtk wxpython tkinter pyqt

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

在Gtk.TextView中使用标记

我一直在尝试找到在Python GObject中Gtk.TextView和一起使用Pango标记的方法,但似乎此功能仅适用于工具提示和标签。具有方法,但需要作为输入,并且必须具有指定的长度。Gtk.TextBufferGtk.TextBufferinsert_markupGtk.TextIter

这里的问题是我只想Gtk.TextView显示文本而不能编辑。因此,尽管我认为我了解您如何使用Gtk.TextTag可编辑/可选文本来实质性地更改其外观(甚至行为),但我不确定完全如何处理静态文本。对此类应用标记的最简单方法是什么?

例如:将“ <b>某些文本</ b>”转换为“ 某些文本 ”(或使用哪个标签)

python gtk user-interface pygtk pygi-aio

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