Andere Funktion aufrufen

Plattformunabhängige GUIs mit wxWidgets.
Antworten
roy-lueders
User
Beiträge: 8
Registriert: Montag 5. Februar 2018, 15:12

Sonntag 4. März 2018, 11:28

Hi Leute,

Ich habe mir mittels wxPython meine Menübar zusammen gebaut.
Jetzt möchte ich gern die einzelnen Punkte auch aufrufen.
Dies habe ich mit DataRecord -> Dashboard und DataRecord -> Motorräder schon mal probiert.
Wenn ich es aufrufe kommt erstmal nur ein Button mit dem jeweiligen Namen, aber sobald ich Dashboard und dann Motorräder aufrufe und über den Button mit der Maus fahre, ändert sich der Inhalt des Buttons.

Wo liegt mein Fehler?

Anbei der Code.

Code: Alles auswählen

# -*- coding: utf8 -*-
import wx

PROGRAMM = 'DataRecord'
VERSION = '0.0.1'
AUTHOR = 'Roy Lüders'
COPY = '2018'

class MainWindow(wx.Frame):
    def __init__(self, parent):
        wx.Frame.__init__(self, parent, size=(800,600))
        self.Menu()
        
        self.Show(True)



    def Menu(self):
        DR = wx.Menu()
        DR_DR = DR.Append(wx.NewId(),"Dashboard")
        self.Bind(wx.EVT_MENU, self.Dashboard, DR_DR)
        DR_DATEIEN = DR.Append(wx.NewId(),"Dateien")
        DR_FAHRER = DR.Append(wx.NewId(),"Fahrer")
        DR_GUIDES = DR.Append(wx.NewId(),"Guides")
        DR_BIKES = DR.Append(wx.NewId(),"Motorräder")
        self.Bind(wx.EVT_MENU, self.Bikes, DR_BIKES)
        DR_ROLLOUTS = DR.Append(wx.NewId(),"Rollouts")
        DR_STRECKEN = DR.Append(wx.NewId(),"Strecken")
        DR_TRANSMISSION = DR.Append(wx.NewId(),'Übersetzungen')
        DR.AppendSeparator()        
        DR_QUIT = DR.Append(wx.NewId(),"Beenden")
        self.Bind(wx.EVT_MENU, self.OnQuit, DR_QUIT)

        SETTINGS = wx.Menu()
        SETTINGS_USER = SETTINGS.Append(wx.NewId(),'Benutzer')

        ABOUT = wx.Menu()
        ABOUT_UPDATE = ABOUT.Append(wx.NewId(),'nach Update suchen')
        ABOUT.AppendSeparator()
        ABOUT_INFO = ABOUT.Append(wx.NewId(),'Info')
        self.Bind(wx.EVT_MENU, self.OnInfo, ABOUT_INFO)
        
        MenuBar = wx.MenuBar()
        MenuBar.Append(DR,"&DataRecord")
        MenuBar.Append(SETTINGS,"&Einstellungen")
        MenuBar.Append(ABOUT,"&?")
        self.SetMenuBar(MenuBar)

    def OnQuit(self, event):
        self.Close()

    def OnInfo(self, event):
        Message_text = 'Programm:' + PROGRAMM + '\nVersion: ' + VERSION + '\nCopyright ' + COPY + ' liegt bei ' + AUTHOR + '.'
        wx.MessageBox(Message_text, 'Über ' + PROGRAMM + ' ' + VERSION,wx.OK | wx.ICON_INFORMATION)

    def Dashboard(self, event):
        screenSize = wx.DisplaySize()
        DB_PANEL = wx.Panel(self,size=(screenSize[0],screenSize[1]), pos=(0,0))
        DB_PANEL.addButton = wx.Button(DB_PANEL,wx.NewId(), label="Dashboard")

    def Bikes(self, event):
        screenSize = wx.DisplaySize()
        B_PANEL = wx.Panel(self,size=(screenSize[0],screenSize[1]), pos=(0,0))
        B_PANEL.addButton = wx.Button(B_PANEL,wx.NewId(), label="Bikes")
    

app = wx.App(False)
frame = MainWindow(None)
app.MainLoop()
Benutzeravatar
Humbalan
User
Beiträge: 59
Registriert: Mittwoch 2. September 2009, 15:11

Dienstag 6. März 2018, 21:43

Hallo roy-lueders,
was sollte denn passieren :K ? Bevor das nicht klar ist, ist Deine Frage leider nicht beantwortbar :wink:
Grüße
Antworten