import wx
import wx.adv
from wx.lib.masked import NumCtrl
import wx.lib.scrolledpanel
import wx.lib.masked as masked
from wx.lib.masked import Field, BaseMaskedTextCtrl
class mainWindow(wx.Frame):
def __init__(self, camera):
#inheritence
wx.Frame.__init__(self, None, style= wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX | wx.CLIP_CHILDREN, size=(1370,720),pos=(0,0))
self.Title = "Registration"
self.SetSize(1370,720)
self.Maximize(True)
self.SetBackgroundColour('#f0f0f0')
menubar = wx.MenuBar()
#main ui
self.mainpanel = wx.Panel(self, size=(1370,720), pos=(0,0))
self.mainpanel.SetBackgroundColour('#f0f0f0')
mid_font = wx.Font(22, wx.DECORATIVE,wx.ITALIC,wx.BOLD)
#------------form panel-------------
self.scroll_panel = wx.lib.scrolledpanel.ScrolledPanel(self.mainpanel,size=(380,540), pos=(30,20),style=wx.NO_BORDER)
self.namepanel = wx.Panel(self.scroll_panel,size=(350,800), pos=(0,0),style=wx.DOUBLE_BORDER)
self.namepanel.SetForegroundColour('#1b262c')
self.Sizer = wx.BoxSizer( wx.VERTICAL )
self.scroll_panel.SetSizer(self.Sizer)
small_font = wx.Font(11, wx.DECORATIVE,wx.ITALIC,wx.BOLD)
fname = wx.StaticText(self.namepanel, -1, "First Name",pos=(30,70))
fname.SetFont(small_font)
self.fname = wx.TextCtrl(self.namepanel, pos=(155,70), size=(160, 25))
mname = wx.StaticText(self.namepanel, -1, "Middle Name",pos=(30,110))
mname.SetFont(small_font)
self.mname = wx.TextCtrl(self.namepanel, pos=(155,110), size=(160, 25))
lname = wx.StaticText(self.namepanel, -1, "Last Name",pos=(30,150))
lname.SetFont(small_font)
self.lname = wx.TextCtrl(self.namepanel, pos=(155,150), size=(160, 25))
button_font = wx.Font(12, wx.DECORATIVE,wx.NORMAL,wx.BOLD)
self.add = wx.Button(self.namepanel, -1, "Confirm", pos=(110,200),size=(130, 30),style=wx.DOUBLE_BORDER)
#self.add.Bind(wx.EVT_BUTTON, self.addinfo)
self.add.SetBackgroundColour('#FFFFFF')
self.add.SetForegroundColour('#1b262c')
self.add.SetFont(button_font)
self.Sizer.Add( self.namepanel, 0, wx.CENTER|wx.ALL, 5 )
self.scroll_panel.SetupScrolling(scrollToTop=False)
class all_module(wx.Frame):
def __init__(self):
#inheritence
wx.Frame.__init__(self, None, style= wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX | wx.CLIP_CHILDREN,pos=(0,0))
self.infopanel = wx.Panel(self,size=(1000,780), pos=(0, 0),style=wx.DOUBLE_BORDER)
self.registration = wx.Button(self.infopanel, -1, "Registration", pos=(0,0),size=(130, 30),style=wx.DOUBLE_BORDER)
self.registration.Bind(wx.EVT_BUTTON, self.register)
def register(self, event):
window = mainWindow(camera)
window.Show()
app = wx.App()
window = all_module()
window.Show()
app.MainLoop()
Это наш код, в котором есть простая регистрация прокручиваемая панель и она добавляется в boxsizer . когда я нажимаю кнопку закрытия, я получаю эту ошибку, что python перестал работать. но когда я удаляю sizer и помещаю все stati c text и textctrl вне sizer, программа плавно закрывается. Но если я добавляю в sizer, я получаю сообщение об ошибке, я пробовал все способы, такие как self.Close () и self.Destroy () , но ничего не помогло. Любое предложение будет оценено для нас, спасибо заранее !!
Python перестал работать
.