Dunkelgrauer Background bei Windows

Plattformunabhängige GUIs mit wxWidgets.
Antworten
tobiasschulz
User
Beiträge: 1
Registriert: Freitag 9. März 2007, 16:36

Hi,

Ich entwickle eine Applikation für Linux und WIndows in wxPython. Unter Linux siehts sie gut aus, aber unter Windows hat sie so einen dunkelgrauen Hintergrund, der extrem hässlich aussieht.
Das ist der Code:

Code: Alles auswählen

import ...

...
class JElizaWX:
        
    def __init__(self):
       self.app = wx.App(redirect = False)
      
    def gui(self):
        global guiLang
        
        """ Initialisation """
        self.language = "roh"
        self.util = Util()
        self.util.chProfile("default")
        self.dirname = "."
        
        """ Create new JEliza """
        self.jel = JEliza()
        
        """ Create Frame """
        self.frame = wx.Frame(None, wx.ID_ANY, GetString(guiLang, "0001"), 
        wx.DefaultPosition, wx.Size(800, 700))
        self.frame.CreateStatusBar()
        self.frame.SetBackgroundColour("white")
        
        """ Create Sizers """
        self.sizer = wx.GridBagSizer()
        self.topsizer = wx.BoxSizer(wx.VERTICAL)
        self.control = wx.GridBagSizer()

        self.langs = wx.GridBagSizer()
        
        """ Create some Comboboxes """
        self.langin = wx.ComboBox(self.frame, 30, "Deutsch", 
                                  choices = ["Deutsch", "Englisch", "Spanisch", "Italienisch", "Franzoesisch", "Portugiesisch", "andere Sprache", "Finnisch"], 
                                  style=wx.CB_DROPDOWN)
        self.lang = wx.ComboBox(self.frame, 31, "Roh", 
                                choices = ["Deutsch", "Englisch", "Spanisch", "Italienisch", "Franzoesisch", "Portugiesisch", "Finnisch"], 
                                style=wx.CB_DROPDOWN)
        wx.EVT_COMBOBOX(self.frame, 30, self.chLang)
        wx.EVT_COMBOBOX(self.frame, 31, self.chLang)
        
        """ Create some "Statictext"s """
        statictext = wx.StaticText(self.frame, 50, 
                                "\n" + " " + GetString(guiLang, "0002") + ":" + "\n")
        statictext.SetFont(wx.Font(9, wx.SWISS, wx.NORMAL, wx.BOLD, False, 'Verdana'))
        self.control.Add(statictext, (0, 0), wx.DefaultSpan, wx.ALIGN_LEFT)
        self.control.Add(wx.StaticText(self.frame, 50, GetString(guiLang, "0003") + ":"), (1, 0), wx.DefaultSpan, wx.ALIGN_LEFT)
        self.control.Add(self.langin, (2, 0), wx.DefaultSpan, wx.EXPAND)
        self.control.Add(wx.StaticText(self.frame, 50, GetString(guiLang, "0004") + ":"), (3, 0), wx.DefaultSpan, wx.ALIGN_LEFT)
        self.control.Add(self.lang, (4, 0), wx.DefaultSpan, wx.EXPAND)
 
        statictext = wx.StaticText(self.frame, 50, 
                                   "\n " + GetString(guiLang, "0005") + ":" + "\n")
        statictext.SetFont(wx.Font(9, wx.SWISS, wx.NORMAL, wx.BOLD, False, 'Verdana'))
 
        self.control.Add(statictext, (6, 0), wx.DefaultSpan, wx.ALIGN_LEFT)
        self.gendata = wx.Button(self.frame, 70, GetString(guiLang, "0006"))
        self.control.Add(self.gendata, (7, 0), wx.DefaultSpan, wx.EXPAND)
        self.cleardata = wx.Button(self.frame, 71, GetString(guiLang, "0007"))
        self.control.Add(self.cleardata, (8, 0), wx.DefaultSpan, wx.EXPAND)
        self.loadonlinewiss = wx.Button(self.frame, 72, GetString(guiLang, "0008"))
        self.control.Add(self.loadonlinewiss, (9, 0), wx.DefaultSpan, wx.EXPAND)
        self.loadstdwiss = wx.Button(self.frame, 73, GetString(guiLang, "0009"))
        self.control.Add(self.loadstdwiss, (10, 0), wx.DefaultSpan, wx.EXPAND)
 
        """ Create some Events """
        wx.EVT_BUTTON(self.frame, 70, self.genDatabase)
        wx.EVT_BUTTON(self.frame, 71, self.clearDatabase)
        wx.EVT_BUTTON(self.frame, 72, self.loadonlinewissen)
        wx.EVT_BUTTON(self.frame, 73, self.loadstandardwissen)
        
        """ Add Menubar """
        self.menubar = wx.MenuBar()
        self.datei = wx.Menu()
        self.help = wx.Menu()
        
        """ Create some Widgets """
        self.button = wx.Button(self.frame, 10, GetString(guiLang, "0010"))
        wx.EVT_BUTTON(self.frame, 10, self.say)
        self.entry = wx.TextCtrl(self.frame, 555, "", style=wx.TE_PROCESS_ENTER)
        wx.EVT_TEXT_ENTER(self.frame, 555, self.say)
        self.log = wx.TextCtrl(self.frame, 9, style=wx.TE_MULTILINE) 
        self.gauge = wx.Gauge(self.frame, -1, 100, (10, 70), (390, 25))#, wx.VERTICAL)
        
        """ Create Menu entries """
        self.datei.Append(101, GetString(guiLang, "0011"), '')
        self.datei.Append(102, GetString(guiLang, "0012"), '')
        self.datei.AppendSeparator()
        self.datei.Append(103, GetString(guiLang, "0013"), '')
        self.datei.Append(104, GetString(guiLang, "0014"), '')
        
        self.help.Append(201, GetString(guiLang, "0015"), '')
       
        self.frame.Bind(wx.EVT_MENU, self.openDialog, id=101)
        self.frame.Bind(wx.EVT_MENU, self.saveDialog, id=102)
        self.frame.Bind(wx.EVT_MENU, self.openWissen, id=103)
        self.frame.Bind(wx.EVT_MENU, self.saveWissen, id=104)
        
        self.frame.Bind(wx.EVT_MENU, self.about, id=201)
        
        self.menubar.Append(self.datei, GetString(guiLang, "0016"))
        self.menubar.Append(self.help, GetString(guiLang, "0017"))
        self.frame.SetMenuBar(self.menubar)
        
        """ Add some widgets to a sizer """
        self.sizer.Add(self.log, (0, 0), (1, 2), wx.EXPAND)
        self.sizer.Add(self.control, (0, 2), (1, 2), wx.ALIGN_LEFT)
        self.sizer.Add(self.entry, (1, 0), (1, 3), wx.ALIGN_CENTER | wx.EXPAND)
        self.sizer.Add(self.gauge, (2, 0), (1, 4), wx.ALIGN_CENTER | wx.EXPAND)
        self.sizer.Add(self.button, (1, 3), wx.DefaultSpan, wx.ALIGN_RIGHT)
        self.sizer.AddGrowableRow(0)
        self.sizer.AddGrowableCol(1)
        self.sizer.AddGrowableCol(0)
        
        """ Set the Sizer """
        self.frame.SetSizer(self.sizer)
        """ Show the Window """
        self.frame.Center()       
        self.frame.Show(True)
        
        """ Check for updates """
        self.checkForUpdates()       
        gau = GaugeThread(self.gauge, self.frame)
        gau.start()
        
        self.setGaugeValue(0)
        
        EVT_RESULT(self.frame, self.OnResult) 

        self.app.MainLoop()

...

Das müssten die relevanten Codeteile sein. Den ganzen Code findet ihr auf http://svn.berlios.de/svnroot/repos/jeliza/gui-addon/, Datei JElizaWX.py !

Danke im Vorraus!

MfG
Tobias[/code]
Benutzeravatar
gerold
Python-Forum Veteran
Beiträge: 5555
Registriert: Samstag 28. Februar 2004, 22:04
Wohnort: Oberhofen im Inntal (Tirol)
Kontaktdaten:

tobiasschulz hat geschrieben:Unter Linux siehts sie gut aus, aber unter Windows hat sie so einen dunkelgrauen Hintergrund, der extrem hässlich aussieht.
Hallo Tobias!

Willkommen im Python-Forum!

Ich halte mich kurz, denn die Antwort steht hier drinn: http://www.python-forum.de/viewtopic.php?p=52864#52864

mfg
Gerold
:-)
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Antworten