FileChooserDialog を使用して、Python スクリプトでネイティブの gnome ダイアログ ボックスを取得しようとしています。スクリプトの実行後、ipython -pylabプロンプトが大幅に遅くなります。この問題は、プレーンな python プロンプトからも発生します。問題をダイアログ ボックスに切り分けました。次の例 (pygtk の例として別の場所に投稿されています) は、この問題を示しています。
import pygtk
pygtk.require('2.0')
import gtk
class FileChooserDialog:
def __init__(self):
filechooserdialog = gtk.FileChooserDialog("FileChooserDialog Example", None, gtk.FILE_CHOOSER_ACTION_OPEN, (gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL, gtk.STOCK_OK, gtk.RESPONSE_OK))
response = filechooserdialog.run()
if response == gtk.RESPONSE_OK:
print "Selected filepath: %s" % filechooserdialog.get_filename()
filechooserdialog.destroy()
if __name__ == "__main__":
FileChooserDialog()
スクリプトを実行した後、キーボードからキーを入力すると、ハード ドライブのライトが点滅するように見えます。これは非常に奇妙な動作です。gtk.FileSelection非推奨またはその他のgtkウィンドウオブジェクトに問題はありません。
現在、ubuntu 10.04でpython 2.6.5、gtk 2.21.1、pygtk 2.17.0を実行しています。一般に、このダイアログは不安定なようです。また、スクリプト内で特定の方法を実行したときにウィンドウが破壊されないという問題もありました。どんな助けでも大歓迎です!