mieki256's diary



2019/11/10() [n年前の日記]

#2 [pygtk] PyGTKの動作確認中

Windows10 x64 1903 + Python 2.7.17 + PyGTK 2.24.0 で、謎の警告メッセージが表示される件について動作を確認中。

gtk.Entry、あるいは gtk.SpinButton を表示するだけのスクリプトを書いて試してみたけど、やはり警告メッセージが表示される。

import pygtk
import gtk
# import cairo
pygtk.require("2.0")


class MyApp(gtk.Window):
    def __init__(self):
        super(MyApp, self).__init__()
        self.connect("delete-event", self.on_delete_event)

        self.et = gtk.Entry()
        self.et.set_text("Entry Widget")
        self.add(self.et)

        self.show_all()

    def on_delete_event(self, window, event, data=None):
        gtk.main_quit()
        return False


if __name__ == '__main__':
    MyApp()
    gtk.main()

import pygtk
import gtk
# import cairo
pygtk.require("2.0")


class MyApp(gtk.Window):
    def __init__(self):
        super(MyApp, self).__init__()
        self.connect("delete-event", self.on_delete_event)

        self.sb = gtk.SpinButton()
        self.sb.set_value(256)
        self.add(self.sb)

        self.show_all()

    def on_delete_event(self, window, event, data=None):
        gtk.main_quit()
        return False


if __name__ == '__main__':
    MyApp()
    gtk.main()

> python entry_test1.py

entry_test1.py:36: GtkWarning: gdkdrawable-win32.c:2013 drawable is not a pixmap or window
  gtk.main()

こんな短いスクリプトですら、例のメッセージが表示されてしまう。

GTK+はダメだな。 :

ダメだな、PyGTK。というより GTK+ がダメ。入力欄なんて、GUIライブラリでは必須の機能だろうに、こんな状態ではダメダメ。

考えてみたら、GTK+ を使って作られている、GIMP、Inkscape、Geany も、特定バージョンでは入力欄絡みで不具合を発生させていたし。しかも、64bit版 GTK+ では不具合が無いけど、32bit版 GTK+ では不具合が発生、とかやってたし。

GTK+ って、基本的にはダメダメなライブラリなのではあるまいか。

もっとも、来年、2020年1月にはサポートが切れる Python 2.7 に加えて、開発終了した PyGTK を使って実験してる状況自体がちょっとアレなわけで。いやまあ、Python-Fu (GIMP-Python) 用のスクリプトを書きたくて、気軽に実験できる環境が欲しいから、あえてこのバージョンを触り始めているのだけれど…。

一般的には、開発が止まっていない Python 3.x + PyGObject で動作確認して、使えるか使えないかを判断すべきだろうな…。もっとも、Windows環境で Python 3.x + PyGObject をインストールするのも、HDD容量の面で大変という問題が…。

以上です。

過去ログ表示

Prev - 2019/11 - Next
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project