Dialog bei falscher Eingabe

Programmierung für GNOME und GTK+, GUI-Erstellung mit Glade.
Antworten
bmh1980
gelöscht
Beiträge: 60
Registriert: Montag 26. Januar 2004, 17:13
Kontaktdaten:

Hallo und frohe Weihnachten. :wink:

Ich habe in meinem GUI zwei Entrys, deren Eingabe auf ein bestimmtes Format (IP-Adresse) überprüft werden soll. Bei falschem Format soll ein Dialog den Benutzer darauf aufmerksam machen.

Soweit kein Problem. Allerdings wenn sich der Dialog dann öffnet, stürzt mir Python mit dem Skript ab.

Die Fehlermeldung ist:

GtkWarning: GtkEntry - did not receive focus-out-event. If you
connect a handler to this signal, it must return
FALSE so the entry gets the event as well
response = message.run()

Gtk-ERROR **: file gtkentry.c: line 4669 (blink_cb): assertion failed: (GTK_WIDGET_HAS_FOCUS (entry))
aborting...
Abgebrochen

Soweit ich es verstehe, hat es etwas mit focus_out_event zu tun, mit dem ich die Formatprüfung verbunden habe. Und ich verstehe auch noch, dass irgend etwas False zurück geben muss.

Sprich, das Was ist mir klar. Aber nicht wann, wie und wo.

Also wann muss was False zurück geben?

Am Ende des Dialogs geht nicht, da Python bereits paar Sekunden nach dem der Dialog erscheint abstürzt.

Kann mir jemand weiter helfen?
bmh1980
gelöscht
Beiträge: 60
Registriert: Montag 26. Januar 2004, 17:13
Kontaktdaten:

Ich weiß ja nicht, ob ich das Problem jetzt im Sinne der Fehlermeldung gelöst oder nur umgangen habe. Zumindest hab ich jetzt einen Weg gefunden, mit dem nichts abstürzt und so funktioniert, wie es soll.

Anstelle von connect() habe connect_after() verwendet. Somit hat das Entry wohl Zeit, den Focus zu verlieren, was mit connect() anscheinend nicht klappt.

Marcus
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Ich liebe es, wenn sich Probleme fast von selbst loesen :)
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Antworten