
Hallo *, momentan spiele ich ein wenig mit Python und Glade rum, ich moechte ein einfaches Fenster mit einem Label enthalten, von der Konsole aus aufrufen und auf der XSession dastellen. Wenn ich das Programm von einem xterm etc in einer XSession aufrufe, funktioniert es. Allerdings nicht, wenn es von einer Konsole aus aufrufe. Ich denke das Problem wird sein das er das Display nicht findet. Jetzt ist, die Frage wie gebe ich das Display an? Oder ist das Problem ganz woanders? Hier der Code: #!/usr/bin/env python import sys import time import os try: import pygtk pygtk.require("2.0") except: pass try: import gtk import gtk.glade except: sys.exit(1) class writeGTK: def __init__(self): #Set the Glade file self.gladefile = 'show_nxuser.glade' self.wTree = gtk.glade.XML(self.gladefile) self.assistent = gtk.glade.XML('show_nxuser.glade','assistent') label1 = self.assistent.get_widget('label1') label1.set_text('NX User is shown here') if __name__ == '__main__': hwg = writeGTK() gtk.main() Und hier der Code vor der XML Datei: <?xml version="1.0" standalone="no"?> <!--*- mode: xml -*--> <!DOCTYPE glade-interface SYSTEM "http://glade.gnome.org/glade-2.0.dtd"> <glade-interface> <widget class="GtkWindow" id="assistent"> <property name="visible">True</property> <property name="title" translatable="yes">Username</property> <property name="type">GTK_WINDOW_POPUP</property> <property name="window_position">GTK_WIN_POS_CENTER</property> <property name="modal">False</property> <property name="resizable">True</property> <property name="destroy_with_parent">False</property> <property name="decorated">True</property> <property name="skip_taskbar_hint">False</property> <property name="skip_pager_hint">False</property> <property name="type_hint">GDK_WINDOW_TYPE_HINT_SPLASHSCREEN</property> <property name="gravity">GDK_GRAVITY_NORTH_WEST</property> <property name="focus_on_map">True</property> <property name="urgency_hint">False</property> <child> <widget class="GtkVBox" id="vContainer"> <property name="visible">True</property> <property name="homogeneous">False</property> <property name="spacing">0</property> <child> <widget class="GtkLabel" id="label1"> <property name="visible">True</property> <property name="label" translatable="yes"></property> <property name="use_underline">False</property> <property name="use_markup">False</property> <property name="justify">GTK_JUSTIFY_LEFT</property> <property name="wrap">False</property> <property name="selectable">False</property> <property name="xalign">0.5</property> <property name="yalign">0.5</property> <property name="xpad">0</property> <property name="ypad">0</property> <property name="ellipsize">PANGO_ELLIPSIZE_NONE</property> <property name="width_chars">-1</property> <property name="single_line_mode">False</property> <property name="angle">0</property> </widget> <packing> <property name="padding">0</property> <property name="expand">False</property> <property name="fill">False</property> </packing> </child> </widget> </child> </widget> </glade-interface> Gruß, Stefan Grote

Am Donnerstag, 28. Juni 2007 16:10 schrieb Stefan Grote:
Hallo *,
momentan spiele ich ein wenig mit Python und Glade rum, ich moechte ein einfaches Fenster mit einem Label enthalten, von der Konsole aus aufrufen und auf der XSession dastellen.
Wenn ich das Programm von einem xterm etc in einer XSession aufrufe, funktioniert es. Allerdings nicht, wenn es von einer Konsole aus aufrufe.
rufst du es als root oder als normaler user auf? -- cu Roland Kruggel mailto: rk.liste at bbf7.de System: Intel, Debian etch, 2.6.16.16, xfce4 KDE 3.5

Hallo, um in der Konsole das X-Display bekannt zu machen, kannst du es mit "export DISPLAY=:0.0" exportieren. Danach sollte dann das GTK-Fenster auf dem X erscheinen wenn du dein Programm aus der Konsole heraus aufrufst. hth Frank Am 28.06.07 schrieb Stefan Grote <stefan@mail.swiftos.de>:
Hallo *,
momentan spiele ich ein wenig mit Python und Glade rum, ich moechte ein einfaches Fenster mit einem Label enthalten, von der Konsole aus aufrufen und auf der XSession dastellen.
Wenn ich das Programm von einem xterm etc in einer XSession aufrufe, funktioniert es. Allerdings nicht, wenn es von einer Konsole aus aufrufe.
Ich denke das Problem wird sein das er das Display nicht findet. Jetzt ist, die Frage wie gebe ich das Display an? ...

Stefan Grote <stefan@mail.swiftos.de> wrote:
momentan spiele ich ein wenig mit Python und Glade rum, ich moechte ein einfaches Fenster mit einem Label enthalten, von der Konsole aus aufrufen und auf der XSession dastellen.
Wenn ich das Programm von einem xterm etc in einer XSession aufrufe, funktioniert es. Allerdings nicht, wenn es von einer Konsole aus aufrufe.
Ich denke das Problem wird sein das er das Display nicht findet. Jetzt ist, die Frage wie gebe ich das Display an?
Üblicherweise über die Umgebungsvariable $DISPLAY
Oder ist das Problem ganz woanders?
Wie genau sehen denn die Fehlermeldungen aus? Florian -- <http://www.florian-diesch.de/> ----------------------------------------------------------------------- ** Hi! I'm a signature virus! Copy me into your signature, please! ** -----------------------------------------------------------------------
participants (4)
-
Florian Diesch
-
Frank Bloeink
-
Roland M. Kruggel
-
Stefan Grote