[Python]GUI schliest nicht bei ESC drücken

02/20/2012 17:04 Benhero#1
Folgendes Problem mit folgendem Source:
Code:
import ui
import snd
import grp
import app
import locale
import item
import player
import net

class GMHelpDialog(ui.ScriptWindow):

	# Fenster wird geladen (Hotkey etc)
	def __init__(self):
		ui.ScriptWindow.__init__(self)
		self.Load_GUI()
		self.SetCenterPosition()
		
	# Fenster wird geschlossen (ESC etc)
	def __del__(self):
		ui.ScriptWindow.__del__(self)
		
	# Schliessung wird erzwungen
	def Destory(self):
		self.Board.Hide()
		return TRUE

	# Schliessung über ESC (verbuggt!)
	def OnPressEscapeKey(self):
		self.Close()
	
	# Close Funktion
	def Close(self):
		self.Board.Hide()
		return TRUE
		
	# GUI wird aufgebaut
	def Load_GUI(self):
		self.Board = ui.BoardWithTitleBar()
		self.Board.SetSize(350, 320)
		self.Board.SetCenterPosition()
		self.Board.AddFlag("movable")
		self.Board.AddFlag("float")
		self.Board.SetTitleName("Fenstertitle")
		self.Board.SetCloseEvent(self.Close)
		self.Board.Show()
sobald ich ihn über F5 aufrufe kann ich ihn NICHT mit ESC schliessen.
Hoffe irgendwer kann mir helfen..

Hier noch der Code zum aufrufen aus der game.py
Code:
def OpenGMHelp(self):
		import gmhelp
		if str(player.GetName())[0] == "[":
			self.GMHelpDialog = gmhelp.GMHelpDialog()
			self.GMHelpDialog.__init__()
Ein weiteres Problem ist. Jedes mal wenn ich F5 Drücke wird die GUI erneut geladen.
Hoffe das man auch das umgehen kann.

Benhero
02/20/2012 19:26 .Restince#2
Ich habe es immer so gemacht
PHP Code:
    def OnPressEscapeKey(self):
        
self.Close()
        return 
TRUE 
:)
02/20/2012 23:20 Benhero#3
das ist ja schon drinne im oberen Script. Leider Ignoriert er es aber einfach und öffnet das Normale Spiel menu (Spieloptionen, Auslogen, Beenden etc)

Benhero