标签: pygtk

我也完全与PyObject,PyGTK和GNOME 3混淆

我安装了Fedora 15来使用Python3和GObject来开发桌面应用程序,因为PyGTK看起来已经过时了:

2011年4月1日星期五由Rafael Villar Burke发布的PyGTK 2.24.0 PyGTK 2.24.0已经发布.这是一个支持GTK + 2.24 API的稳定版本. 希望使用GTK +开发Python应用程序的新用户建议使用PyGObject中提供的GObject-Introspection功能.[...]

PyGobject 2.26.0已经发布.这是2.26.x系列中的第一个稳定版本,并引入了对内省和Python 3的初始支持.[...]

资料来源:http://www.pygtk.org/

我以为是STRIKE!使用Python 3和PyGObject开发新的Gnome3应用程序!我访问了PyGObject页面,看到最新的稳定版本是2.28(自2.26以来支持Python3),它安装在Fedora上,但只有python2绑定.

有没有搞错?

我访问了网站上的PyGobject 演示示例,并使用pygtk + pygtk.require('2.0')而不是pygobject查看了源代码和每个代码.

我错过了什么吗?如何使用Python3和PyGObject开发Gnome 3应用程序?

python pygtk gnome pygobject

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

Python - 单独的程序逻辑和GUI代码?

将程序逻辑分离到GUI代码的最佳方法是什么?

我想要使​​用相同程序逻辑的不同GUI(GTK,KDE,CLI)代码.

我正在考虑使用不同的python模块(winecellar-common,winecellar-gtk,winecellar-cli),不知道我将如何做到这一点,如果它是最好的方式.

*已编辑*

只是在我的问题中添加什么是组织项目文件结构和使用不同模块构建平台的最佳方法.请记住它主要用于Ubuntu.

python pygtk

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

在Linux中使用Python创建GUI

快问.

我正在使用Linux,我想尝试使用Python制作GUI.我听说过像Qt,GTK +和PyGTK这样的东西,但我不知道它们究竟是什么,它们之间的区别是什么.

他们如何使用GNOME,KDE,XFCE等不同的DE有什么不同吗?是否有任何IDE允许您像Microsoft Visual Studio一样创建GUI(对于C#,C,Visual Basic等)?

或者我应该使用除Python以外的其他语言来制作GUI应用程序?

python linux gtk user-interface pygtk

13
推荐指数
2
解决办法
4万
查看次数

如何在GTK3中拖放和排序GtkTreeView?

我正在移植liblarch,一个处理有向无环图的库,从PyGTK(GTK2)到PyGObject内省(GTK3).我遇到了GtkTreeView的问题.

使用liblarch的应用程序需要按列对GtkTreeView进行排序,但同时,用户可以拖放行,在另一行下移动一行.为此我必须手动处理dnd_data_get(),dnd_data_receive()这是完全可以的.

GtkTreeView的最小设置在PyGTK下运行.行已排序,用户可以移动行.

#!/usr/bin/python
# -*- coding: utf-8 -*-

import gtk

window = gtk.Window()
window.set_size_request(300, 200)
window.connect('delete_event', lambda w,e: gtk.main_quit())

# Define Liblarch Tree

store = gtk.TreeStore(str, str)
store.insert(None, -1, ["A", "Task A"])
store.insert(None, -1, ["B", "Task B"])
store.insert(None, -1, ["C", "Task C"])
d_parent = store.insert(None, -1, ["D", "Task D"])
store.insert(d_parent, -1, ["E", "Task E"])

# Define TreeView in similar way as it happens in GTG/Liblarch_gtk
tv = gtk.TreeView()

col = gtk.TreeViewColumn()
col.set_title("Title")
render_text …
Run Code Online (Sandbox Code Playgroud)

python gtk porting pygtk gtk3

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

每隔X分钟运行一次函数 - Python

我正在使用Python和PyGTK.我对运行某个函数感兴趣,该函数每隔几分钟从串口获取数据并保存.

目前,我在时间库中使用sleep()函数.为了能够进行处理,我的系统设置如下:

import time
waittime = 300 # 5 minutes
while(1):
    time1 = time.time()
    readserial() # Read data from serial port
    processing() # Do stuff with serial data, including dumping it to a file
    time2 = time.time()
    processingtime = time2 - time1
    sleeptime = waittime - processingtime
    time.sleep(sleeptime)
Run Code Online (Sandbox Code Playgroud)

此设置允许我在从串行端口读取数据之间有5分钟的间隔.我的问题是,我希望能够让我的readserial()函数暂停每5分钟发生一次,并且能够一直做事而不是使用time.sleep()函数.

有关如何解决这个问题的任何建议?多线程?中断?请记住我正在使用python.

谢谢.

python gtk pygtk timer

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

12
推荐指数
2
解决办法
9657
查看次数

在PyGTK中启用或禁用gtk.Button

如何gtk.Button在PyGTK中设置启用或禁用?

python pygtk

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

如何在开罗表面上绘制任何GTK小部件

我想保存GTK窗口的外观,以及它包含的所有按钮和其他小部件到PNG或PDF文件.开罗支持在这样的表面上绘画.我可以以某种方式要求GTK小部件在开罗表面上绘制自己吗?我非常感谢代码示例,因为我是GTK和Cairo的新手.Python是我的首选语言.

gtk pygtk cairo

12
推荐指数
2
解决办法
3850
查看次数

使用与pygobject Gtk3的林间空地

我正在使用迁移指南(将GTK2移植到GTK3)将脚本转换为使用Gtk3 .我把我改成import pygtkfrom gi.repository import Gtk等等......

我被困了,因为glade模块是从模块gtk加载的:

 import gtk
 import gtk.glade
Run Code Online (Sandbox Code Playgroud)

但是现在再也没办法了.

请注意,我只需要替换gtk.glade.XML()...

pygtk glade pygobject gtk3

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

PyQt优于PyGTK有什么优势,反之亦然?

我有一个应用程序,其GUI将根据人体工程学原因重新制作.它是用PyGTK编写的,我想知道是否应该切换到PyQt来缓解未来的发展.

这个应用程序主要是带有按钮,工具栏,对话框等的经典UI,但也有一些特定的要求:我当然需要创建一个基于treeview/tableview的自定义小部件(制作类似电子表格的小部件),这个应用程序有一个许多更新GUI的工作线程.

我正在就这两点寻求建议:

  • 关于创建自定义小部件,PyQt是否提供比PyGTK更好的机制,特别是稍微修改现有的小部件.
  • 我有问题(即使正确使用threads_init()和threads_enter())工作线程在使用PyGTK时更新GUI.PyQt在这一点上是否更好?

python user-interface pygtk pyqt4

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

标签 统计

pygtk ×10

python ×8

gtk ×5

gtk3 ×2

pygobject ×2

user-interface ×2

cairo ×1

glade ×1

gnome ×1

linux ×1

porting ×1

pyqt4 ×1

timer ×1