Python GTK3:如何创建Gtk.FileChooseDialog?

里卡多·克鲁兹(Ricardo Cruz)

如何正确创建一个Gtk.FileChooseDialog?

这个受欢迎的教程说使用如下代码:

import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk

dialog = Gtk.FileChooserDialog("Please choose a folder", None,
    Gtk.FileChooserAction.SELECT_FOLDER,
    (Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
     "Select", Gtk.ResponseType.OK))

但是,如果运行此命令python -W error(以捕获不建议使用的警告),它将显示:

  File "test3.py", line 8, in <module>
    "Select", Gtk.ResponseType.OK))
  File "/usr/lib/python2.7/dist-packages/gi/overrides/__init__.py", line 287, in new_init
    category, stacklevel=stacklevel)
gi.overrides.Gtk.PyGTKDeprecationWarning: Using positional arguments with the GObject constructor has been deprecated. Please specify keyword(s) for "title, parent, action, buttons" or use a class specific constructor. See: https://wiki.gnome.org/PyGObject/InitializerDeprecations

使用Gtk.FileChooserDialog.new给出TypeError: Dialog constructor cannot be used to create instances of a subclass FileChooserDialog

API对构造函数一无所知。奇怪的。

ps:这个问题的答案应该与配合使用python -W error它不应依赖已弃用的API。这就是我要问的全部。

探测

只需遵循说明并使用关键字参数即可。我还更改了使用按钮,.add_buttons()因为这也引发了DeprecationWarning:

import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk

dialog = Gtk.FileChooserDialog(
    title="Please choose a folder",
    action=Gtk.FileChooserAction.SELECT_FOLDER,
)

dialog.add_buttons(Gtk.STOCK_CANCEL, Gtk.ResponseType.CANCEL,
                   "Select", Gtk.ResponseType.OK)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

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

python GTK3限制标签宽度

使用python gobject-introspection和gtk3的Cairo和Gdk.Window与Gtk.DrawingArea

GTK3 Python-永久可见的SearchBar

Python Gtk3,如何将响应(按钮)插入MessageDialog?

Python Gtk3在textview中设置文本

TreeView在Python Gtk3中不起作用

使用GTK3和pycairo的Python3动画

Python Gtk3 GtkImage

Python GTK + 3:如何使按钮变为圆形?

在使用Glade创建的Python GTK3程序中导入CSS文件

使用GTK3 / Glade / Python关闭窗口时出错

如何为Python安装GTK + 3

如何在gtk3中使用python强制重绘?

Python GTK3继承

Python3,Gtk3,调整值随机变化

在gtk3 + for python中,如何获取所选menuitem或所选menuitem的索引?

使用python gtk3 appindicator创建两个或多个面板指示器

在Windows下运行Galde Gtk3 + Python

如何在GTK3 Python中创建多样式按钮

Python,Gtk3:如何在其他内容运行时使进度条跳动

Python GTK3:如何使用gtk _ * _ new _ *()函数

使用CellRendererToggle创建Gtk3树视图并使用Python从列表中创建名称

GTK3和Python交互-类的体系结构-Matplotlib Canvas上GTK3的PopupMenu

如何在 GTK3 和 Python 2.7 中的图像对象上创建“单击事件”

使用 Python GTK3 Gtk.Application 打开多个应用程序窗口的正确方法

Python Gtk3:获取树视图中过滤的行数

Python:如何处理 Gtk3 中的线程优先级

如何在python中使用GTK3检查窗口是否存在并可能更新其中的数据?