Seite 1 von 1

Gui immer an der Oberfläche öffnen

Verfasst: Dienstag 19. August 2008, 12:36
von Xisto
Moin ich habe mir mit Boa Constructor eine GUI gebastelt leider liegt sie immer unter anderen Fenstern und nicht an der Oberfläche wenn sie gestartet wird. Kann man da irgendwas machen das es immer Top ist.

Code: Alles auswählen

        wx.Frame.__init__(self, id=wxID_FRAME1, name='', parent=prnt,
              size=wx.Size(993, 567),
              style=wx.DEFAULT_FRAME_STYLE, title='Vorschau')
        self.SetClientSize(wx.Size(985, 533))
        self.SetBackgroundStyle(wx.BG_STYLE_COLOUR)
        self.SetBackgroundColour(wx.Colour(255, 255, 255))
enthält dann nur noch Buttons und ein paar bilder die habe ich weggelassen. Aufrufen tue ich es mit

Code: Alles auswählen

class BoaApp(wx.App):
    def OnInit(self):
        self.main = create(None)
        self.main.Show()
        self.SetTopWindow(self.main)
        return True

def main():
    application = BoaApp(0)
    application.MainLoop()

.....
main()
....

Verfasst: Dienstag 26. August 2008, 23:15
von thonix
Ich bin mir jetzt nicht wirklich sicher - aber hast du schon mal wx.Frame.SetFocus() versucht?

Verfasst: Dienstag 26. August 2008, 23:57
von the_laughing_man
einen versuch könnte folgendes wert sein:

Code: Alles auswählen

class App(wx.App):
    def OnInit(self):
          title = "test."
          self.dlg = wx.Dialog(parent=None,id=-1,title=title,
                        size=(700, 500), pos=(-1,-1),
                  style=wx.STAY_ON_TOP|wx.SUNKEN_BORDER|wx.DEFAULT_DIALOG_STYLE)
           sizer = wx.BoxSizer(wx.VERTICAL)
           self.ie = iewin.IEHtmlWindow(self.dlg, -1, 
                                 style = wx.NO_FULL_REPAINT_ON_RESIZE )   
aus: http://lists.wxwidgets.org/pipermail/wx ... 36909.html

zu beachten ist der teil hinter style=...., insbesondere das wx.STAY_ON_TOP

mfg