草庐IT

Gtk-WARNING

全部标签

python - 使用 python、sqlite3 和 gtk 的独立应用程序的 MVC

我正在开发一个采用MVC结构的pygtk应用程序。但我不认为我在实现中遵循标准MVC模式。请建议我必须如何使用MVC来解决以下问题。我在我的应用程序中使用python、gtk、sqlite3应用程序的问题陈述:数据存在于日志文件中。它应该被提取并显示在GUI中。GUI可以有多个View(如浏览器选项卡),显示从日志文件中提取的数据(用户可以从同一个数据库表创建多个View)。用户可以通过GUIView过滤/搜索数据。过滤条件可能因View而异。当前使用MVC结构的实现:当前,在GUI中,存在一个“创建View”按钮,单击该按钮会创建一个View来显示提取的数据。数据从日志文件中提取(C

python - GTK+ Filechooser 打开文件和文件夹

当点击文件选择器对话框上的打开按钮时,如何让我的文件选择器能够同时选择文件和文件夹?我想压缩在一个文件选择器中打开文件和文件夹的能力。我正在使用GTK+和Python。 最佳答案 我正在考虑这个问题,虽然在您的评论中您决定走另一条路,但我确实有一个建议:编写您自己的GTK+文件选择器子类并提供两个“打开”按钮,一个到“打开文件”和另一个“打开目录”。这将消除上面讨论的歧义。 关于python-GTK+Filechooser打开文件和文件夹,我们在StackOverflow上找到一个类似的

python - 使用 python 和 GObject 自省(introspection)获取 GTK+ 主题颜色

随着GObject自省(introspection)的引入,通过widget.get_style()方法访问主题颜色的方式已经不存在了。我对通过GOBject自省(introspection)使用GTK+时如何获得主题颜色感兴趣。该解决方案最好适用于两个版本(2和3),但也可以接受适用于每个版本的解决方案。 最佳答案 我不确定如何从gtk+-2.0获取它,除非您使用纯gtk+-2.0环境,在这种情况下我认为旧的GtkStyle方法有效。例如,假设您没有运行像gnome-shell这样的Gtk-3.0环境importgi#makesu

python - Gtk* 后端需要安装 pygtk

在虚拟环境中,尝试加载使用matplotlib的GTKAgg后端的脚本时,我失败了,回溯如下:Traceback(mostrecentcalllast):File"",line1,inFile"/home/user/.virtualenvs/venv/local/lib/python2.7/site-packages/matplotlib/pyplot.py",line97,in_backend_mod,new_figure_manager,draw_if_interactive,_show=pylab_setup()File"/home/user/.virtualenvs/venv/

Python GTK3 TreeView 按钮

使用GTK3时,一些Treeviews(我推测)在底部有几个按钮似乎是它的一部分。Ubuntu中的系统设置以及GTK3应用程序的文件选择器对话框都使用了它这是GTK3的一部分还是只是一个特制的容器? 最佳答案 以防其他人来到这里,按钮是工具栏中带有“inline-toolbar”类的工具按钮self.listTools=Gtk.Toolbar()self.listTools.set_property("icon_size",1)context=self.listTools.get_style_context()context.add

python - 在 Python 2 + GTK 中检测/删除未配对的代理字符

在Python2.7中,我可以成功地将Unicode字符串"abc\udc34xyz"转换为UTF-8(结果是"abc\xed\xb0\xb4xyz")。但是当我将UTF-8字符串传递给例如时。pango_parse_markup()或g_convert_with_fallback(),我收到类似“转换输入中的字节序列无效”的错误。显然,GTK/Pango函数检测到字符串中的“不成对代理项”并(正确地?)拒绝它。Python3甚至不允许将Unicode字符串转换为UTF-8(错误:“‘utf-8’编解码器无法在位置3中编码字符‘\udc34’:不允许代理”),但我可以运行"abc\ud

Python - gtk3 将股票图标添加到 Gtk.Buttons

我是GTK3的新手(我更喜欢wxWidgets),我无法将股票图标加载到gtk.button...这是我的尝试:image=Gtk.Image()pb=Pixbuf.new_from_stock(Gtk.STOCK_OPEN)self.browse_button=Gtk.Button(label="")self.browse_button.set_from_pixbuf(pb)这是在wxWidgets上的实现方式(简单得多):self.browse_button=wx.BitmapButton(self,wx.ID_ANY,wx.ArtProvider.GetBitmap(wx.ART

python - 为 python GTK3 应用程序创建安装程序

我刚刚使用Gtk3为GUI开发了一个Python2.7应用程序。我的问题是,我现在如何为我的最终用户创建适用于Windows、Mac和Linux(可能是三种不同的安装程序)的安装程序,以便轻松下载应用程序而无需下载python和GTK等。我以前从未从python脚本创建安装程序。我听说有一些用于此目的的工具(py2exe?pyinstaller?),但我不知道如何以及用它们打包什么才能使其能够使用Gtk3。 最佳答案 在互联网上搜索了几天的解决方案后,我终于偶然发现了thisblog-post,这帮助我创建了一个.exe来在Wind

python - 如何更改 GTK 中的字体大小?

有没有一种简单的方法可以更改GTK中文本元素的字体大小?现在我能做的最好的事情就是在标签上做set_markup,用一些愚蠢的东西,比如:lbl.set_markup("%s"%text)这1)需要我设置字体,2)似乎有很多开销(必须解析标记),以及3)更改按钮等的字体大小会很烦人。有没有更好的办法? 最佳答案 如果你想在你的应用程序中整体改变字体,我会把这个工作留给gtkrc(然后变成一个谷歌问题,“gtkrc字体”查询将我们带到thisubuntuforumslink,它有以下片段gtkrc文件):style"font"{fon

python - 如何在 gtk.ScrolledWindow 内的 GtkTreeView 中显示列标题?

我在Gtk.Treeview和Gtk.ScrolledWindow中遇到问题。我有大量数据,这些数据不适合我的正常窗口几何图形,所以我将我的Treeview放在ScrolledWindow中,这似乎是正常的方式。这个解决方案的问题是,当我滚动时,我的列标题消失了。这种行为对我来说似乎还可以,因为ScrolledWindow应该关心其中的小部件。那么,如何使我的Treeview可滚动并始终在第一行显示列标题?我修改了basictreeview.py示例来表示我的问题:#!/usr/bin/envpython#examplebasictreeview.pyimportpygtkpygtk.