0

我正在努力解决一个问题,这真的让我发疯。我为 Python 2.7 [1] 和 Python 2.7.5 [2] 安装了 Pygtk-all-in-one Bundle 版本 2.24.2。

现在我想使用 gtk.builder 来加载我的 glade 文件。

我的 python 文件如下所示:

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

import sys
import gtk

import gtk.glade

class  QueryRelevanceEvaluationApp:

    def __init__(self):
        builder = gtk.Builder()
        builder.add_from_file("C:\blubb.glade")
        builder.connect_signals(self)

app = QueryRelevanceEvaluationApp()
gtk.main()

我的林间空地文件看起来像:

<?xml version="1.0" encoding="UTF-8"?>
<interface>
  <requires lib="gtk+" version="2.16"/>
  <!-- interface-naming-policy project-wide -->
  <object class="GtkWindow" id="window1">
    <property name="can_focus">False</property>
    <child>
      <placeholder/>
    </child>
  </object>
</interface>

如果我运行应用程序,我会收到以下错误:

Process started >>>
Traceback (most recent call last):
  File "C:\Users\Bernhard\Documents\test\base2.py", line 16, in <module>
    app = QueryRelevanceEvaluationApp()
  File "C:\Users\Bernhard\Documents\test\base2.py", line 13, in __init__
    builder.add_from_file("C:\blubb.glade")
glib.GError: Datei ┬╗Clubb.glade┬½ konnte nicht ge├Âffnet werden: Invalid argument

但是,如果我将“blubb.glade”重命名为“hallo-welt2.ui”,一切正常。我对 Python 比较陌生,所以我真的不知道是什么导致了这个问题。起初,我认为我的 Pygtk 安装有问题,但后来我发现了奇怪的行为,重命名文件后一切正常。所以我在想,也许是别的东西(字符集?)导致了这个问题。我正在使用 Windows 7 64 位机器(我的系统语言是德语)。

如果有人可以提示我如何解决这个问题,那就太好了。

提前致谢!

来自奥地利的问候

[1] http://ftp.gnome.org/pub/GNOME/binaries/win32/pygtk/2.24/pygtk-all-in-one-2.24.2.win32-py2.7.msi

[2] http://www.python.org/download/releases/2.7.5/

4

1 回答 1

0

\b是退格字符,AFAIR;你应该转义反斜杠:

>>> print "C:\blubb.glade"
Clubb.glade
>>> print "C:\\blubb.glade"
C:\blubb.glade
于 2013-06-19T07:40:02.693 回答