Кнопка "Настройки" теперь кликабельна.

Код почищен
This commit is contained in:
danamir
2018-08-16 01:02:55 +03:00
parent 51748ebd9b
commit a7ddada83f
7 changed files with 249 additions and 75 deletions

2
.gitignore vendored
View File

@@ -1,3 +1,3 @@
venv1
venv
.idea
sorce

104
gui/MainPage.py Normal file
View File

@@ -0,0 +1,104 @@
# -*- coding: utf-8 -*-
import wx
import main
class MainFramePanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 500),
style=wx.FULL_REPAINT_ON_RESIZE)
self.frame = parent
bSizer1 = wx.BoxSizer(wx.VERTICAL)
self.lbl_kaf = wx.StaticText(self, wx.ID_ANY, u"Кафедра «Дорожные машины»",
wx.DefaultPosition, wx.DefaultSize, 0)
self.lbl_kaf.Wrap(-1)
bSizer1.Add(self.lbl_kaf, 0, wx.ALIGN_CENTER | wx.ALL, 5)
self.lbl_NameProg = wx.StaticText(self, wx.ID_ANY, u"Подбор параметров дробильного комплекса",
wx.DefaultPosition, wx.DefaultSize, 0)
self.lbl_NameProg.Wrap(-1)
bSizer1.Add(self.lbl_NameProg, 0, wx.ALIGN_CENTER | wx.ALL, 5)
self.lbl_predstv = wx.StaticText(self, wx.ID_ANY, u"Предстваьтесь", wx.DefaultPosition, wx.DefaultSize, 0)
self.lbl_predstv.Wrap(-1)
bSizer1.Add(self.lbl_predstv, 0, wx.ALL, 5)
fgSizer1 = wx.FlexGridSizer(0, 2, 0, 0)
fgSizer1.SetFlexibleDirection(wx.BOTH)
fgSizer1.SetNonFlexibleGrowMode(wx.FLEX_GROWMODE_SPECIFIED)
self.lbl_name = wx.StaticText(self, wx.ID_ANY, u"Имя", wx.DefaultPosition, wx.DefaultSize, 0)
self.lbl_name.Wrap(-1)
fgSizer1.Add(self.lbl_name, 0, wx.ALL, 5)
self.inpt_name = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0)
fgSizer1.Add(self.inpt_name, 0, wx.ALL, 5)
self.lbl_familia = wx.StaticText(self, wx.ID_ANY, u"Фамилия", wx.DefaultPosition, wx.DefaultSize, 0)
self.lbl_familia.Wrap(-1)
fgSizer1.Add(self.lbl_familia, 0, wx.ALL, 5)
self.inpt_familia = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0)
fgSizer1.Add(self.inpt_familia, 0, wx.ALL, 5)
self.lbl_group = wx.StaticText(self, wx.ID_ANY, u"Группа", wx.DefaultPosition, wx.DefaultSize, 0)
self.lbl_group.Wrap(-1)
fgSizer1.Add(self.lbl_group, 0, wx.ALL, 5)
self.inpt_group = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0)
fgSizer1.Add(self.inpt_group, 0, wx.ALL, 5)
self.lbl_zachetka = wx.StaticText(self, wx.ID_ANY, u"№ Зачётной книжки", wx.DefaultPosition, wx.DefaultSize, 0)
self.lbl_zachetka.Wrap(-1)
fgSizer1.Add(self.lbl_zachetka, 0, wx.ALL, 5)
self.inpt_zachetka = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0)
fgSizer1.Add(self.inpt_zachetka, 0, wx.ALL, 5)
bSizer1.Add(fgSizer1, 1, wx.EXPAND, 5)
gSizer1 = wx.GridSizer(0, 2, 0, 0)
self.btn_settings = wx.Button(self, wx.ID_ANY, u"Настройки", wx.DefaultPosition, wx.DefaultSize, 0)
gSizer1.Add(self.btn_settings, 0, wx.ALIGN_BOTTOM | wx.ALL, 5)
self.btn_page2 = wx.Button(self, wx.ID_ANY, u"Далее", wx.DefaultPosition, wx.DefaultSize, 0)
gSizer1.Add(self.btn_page2, 0, wx.ALIGN_BOTTOM | wx.ALIGN_RIGHT | wx.ALL, 5)
bSizer1.Add(gSizer1, 1, wx.EXPAND, 5)
self.SetSizer(bSizer1)
self.Layout()
self.btn_page2.Bind(wx.EVT_BUTTON, main.MainPage.go_page2)
self.btn_settings.Bind(wx.EVT_BUTTON, main.MainPage.change_settings)
def get_valuse(self):
data = []
name = self.inpt_name.GetValue()
familia = self.inpt_familia.GetValue()
group = self.inpt_group.GetValue()
zachetka = self.inpt_zachetka.GetValue()
data.append(name, familia, group, zachetka)
return data
class MainFrame(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=wx.EmptyString, pos=wx.DefaultPosition,
size=wx.Size(500, 500), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
self.SetSizeHints(wx.DefaultSize, wx.DefaultSize)
self.Centre(wx.BOTH)
panel = MainFramePanel(self)
def run_page():
app = wx.App(False)
frame = MainFrame(None)
frame.Show()
app.MainLoop()
if __name__ == "__main__":
run_page()

69
gui/MainSettings.py Normal file
View File

@@ -0,0 +1,69 @@
import wx
class MainPanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(300, 70),
style=wx.TAB_TRAVERSAL)
bSizer1 = wx.BoxSizer(wx.VERTICAL)
fgSizer1 = wx.FlexGridSizer(0, 3, 0, 0)
fgSizer1.SetFlexibleDirection(wx.BOTH)
fgSizer1.SetNonFlexibleGrowMode(wx.FLEX_GROWMODE_SPECIFIED)
self.m_staticText2 = wx.StaticText(self, wx.ID_ANY, u"Введите пароль", wx.DefaultPosition, wx.DefaultSize, 0)
self.m_staticText2.Wrap(-1)
fgSizer1.Add(self.m_staticText2, 0, wx.ALL, 5)
self.m_textCtrl2 = wx.TextCtrl(self, wx.ID_ANY, wx.EmptyString, wx.DefaultPosition, wx.DefaultSize, 0)
fgSizer1.Add(self.m_textCtrl2, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5)
self.btn_ok = wx.Button(self, wx.ID_ANY, u"OK", wx.DefaultPosition, wx.Size(60, -1), 0)
fgSizer1.Add(self.btn_ok, 0, wx.ALL, 5)
bSizer1.Add(fgSizer1, 1, wx.EXPAND, 5)
self.SetSizer(bSizer1)
self.Layout()
self._bindGuiEvents()
def __del__(self):
pass
def _bindGuiEvents(self):
self.btn_ok.Bind(wx.EVT_BUTTON, self.ok_pressed)
def ok_pressed(self, event):
paswd = self.m_textCtrl2.GetValue()
if paswd == str('123456'):
self.run_admin_interface()
def run_admin_interface(self):
pass
class MainFrame(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=wx.EmptyString, pos=wx.DefaultPosition,
size=wx.Size(300, 70), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
self.SetSizeHints(wx.DefaultSize, wx.DefaultSize)
self.Centre(wx.BOTH)
panel = MainPanel(self)
def run_page():
app = wx.App(False)
frame = MainFrame(None)
frame.Show()
app.MainLoop()
if __name__ == '__main__':
run_page()

View File

@@ -29,8 +29,8 @@ class SecondPagePanel(wx.Panel):
# Virtual event handlers, overide them in your derived class
def lab1(self, event):
from labs.lab1 import lab1
nex_page = lab1.MainFrame()
from labs.lab1 import lr1_main
nex_page = lr1_main.run_page()
nex_page.Show()
class SecondPage(wx.Frame):

View File

@@ -1,76 +1,68 @@
# -*- coding: utf-8 -*-
###########################################################################
## Python code generated with wxFormBuilder (version Jul 11 2018)
## http://www.wxformbuilder.org/
##
## PLEASE DO *NOT* EDIT THIS FILE!
###########################################################################
# -*- coding: utf-8 -*-
import wx
import wx.xrc
###########################################################################
## Class MyFrame1
###########################################################################
class MyFrame1 ( wx.Frame ):
def __init__( self, parent ):
wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = wx.DefaultPosition, size = wx.Size( 500,300 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
self.SetSizeHints( wx.DefaultSize, wx.DefaultSize )
self.Centre( wx.BOTH )
def __del__( self ):
pass
class MyPanel1(wx.Panel):
###########################################################################
## Class MyPanel1
###########################################################################
def __init__(self, parent):
wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 300),
style=wx.TAB_TRAVERSAL)
class MyPanel1 ( wx.Panel ):
def __init__( self, parent ):
wx.Panel.__init__ ( self, parent, id = wx.ID_ANY, pos = wx.DefaultPosition, size = wx.Size( 500,300 ), style = wx.TAB_TRAVERSAL )
bSizer3 = wx.BoxSizer( wx.VERTICAL )
bSizer4 = wx.BoxSizer( wx.VERTICAL )
self.m_staticText2 = wx.StaticText( self, wx.ID_ANY, u"Лабораторная работа 1", wx.DefaultPosition, wx.DefaultSize, 0 )
self.m_staticText2.Wrap( -1 )
bSizer4.Add( self.m_staticText2, 0, wx.ALL|wx.ALIGN_CENTER_HORIZONTAL, 5 )
self.m_button4 = wx.Button( self, wx.ID_ANY, u"Прочти теорию", wx.DefaultPosition, wx.DefaultSize, 0 )
bSizer4.Add( self.m_button4, 0, wx.ALL, 5 )
self.m_button5 = wx.Button( self, wx.ID_ANY, u"Ответь на вопросы", wx.DefaultPosition, wx.DefaultSize, 0 )
bSizer4.Add( self.m_button5, 0, wx.ALL, 5 )
self.m_button6 = wx.Button( self, wx.ID_ANY, u"Выполни лабораторную работу", wx.DefaultPosition, wx.DefaultSize, 0 )
bSizer4.Add( self.m_button6, 0, wx.ALL, 5 )
bSizer3.Add( bSizer4, 1, wx.EXPAND, 5 )
wSizer1 = wx.WrapSizer( wx.HORIZONTAL, wx.WRAPSIZER_DEFAULT_FLAGS )
self.m_button10 = wx.Button( self, wx.ID_ANY, u"Выйти", wx.DefaultPosition, wx.DefaultSize, 0 )
wSizer1.Add( self.m_button10, 0, wx.ALIGN_RIGHT|wx.ALIGN_CENTER_VERTICAL, 5 )
bSizer3.Add( wSizer1, 1, wx.EXPAND, 5 )
self.SetSizer( bSizer3 )
self.Layout()
def __del__( self ):
pass
bSizer3 = wx.BoxSizer(wx.VERTICAL)
bSizer4 = wx.BoxSizer(wx.VERTICAL)
self.m_staticText2 = wx.StaticText(self, wx.ID_ANY, u"Лабораторная работа 1", wx.DefaultPosition,
wx.DefaultSize, 0)
self.m_staticText2.Wrap(-1)
bSizer4.Add(self.m_staticText2, 0, wx.ALL | wx.ALIGN_CENTER_HORIZONTAL, 5)
self.m_button4 = wx.Button(self, wx.ID_ANY, u"Прочти теорию", wx.DefaultPosition, wx.Size(200, -1), 0)
bSizer4.Add(self.m_button4, 0, wx.LEFT, 5)
self.m_button5 = wx.Button(self, wx.ID_ANY, u"Ответь на вопросы", wx.DefaultPosition, wx.Size(200, -1), 0)
bSizer4.Add(self.m_button5, 0, wx.ALL, 5)
self.m_button6 = wx.Button(self, wx.ID_ANY, u"Выполни лабораторную работу", wx.DefaultPosition,
wx.Size(200, -1), 0)
bSizer4.Add(self.m_button6, 0, wx.ALL, 5)
bSizer3.Add(bSizer4, 1, wx.EXPAND | wx.ALIGN_CENTER_HORIZONTAL, 5)
wSizer1 = wx.WrapSizer(wx.HORIZONTAL, wx.WRAPSIZER_DEFAULT_FLAGS)
self.m_button10 = wx.Button(self, wx.ID_ANY, u"Выйти", wx.DefaultPosition, wx.DefaultSize, 0)
wSizer1.Add(self.m_button10, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.ALIGN_CENTER_VERTICAL, 5)
bSizer3.Add(wSizer1, 1, wx.EXPAND, 5)
self.SetSizer(bSizer3)
self.Layout()
self.m_button4.Bind(wx.EVT_BUTTON, self.read_theory)
def read_theory(self):
pass
class MyFrame1(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, id=wx.ID_ANY, title=wx.EmptyString, pos=wx.DefaultPosition,
size=wx.Size(500, 300), style=wx.DEFAULT_FRAME_STYLE | wx.TAB_TRAVERSAL)
self.SetSizeHints(wx.DefaultSize, wx.DefaultSize)
self.Centre(wx.BOTH)
panel = MyPanel1(self)
def run_page():
app = wx.App(False)
frame = MyFrame1(None)
frame.Show()
app.MainLoop()
if __name__ == '__main__':
run_page()

15
main.py
View File

@@ -1,6 +1,7 @@
# -*- coding: utf-8 -*-
import wx
class MainFramePanel(wx.Panel):
def __init__(self, parent):
wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 500),
@@ -67,8 +68,10 @@ class MainFramePanel(wx.Panel):
bSizer1.Add(gSizer1, 1, wx.EXPAND, 5)
self.SetSizer(bSizer1)
self._bindGuiEvents()
self.Layout()
self.btn_page2.Bind(wx.EVT_BUTTON, self.go_page2)
def empty_pole(self):
dlg = wx.MessageDialog(self, 'Не все поля заполнены. Заполните все поля перед продолжением', 'Ошибка', wx.OK)
@@ -76,6 +79,10 @@ class MainFramePanel(wx.Panel):
if val == wx.ID_OK:
dlg.Destroy()
def _bindGuiEvents(self):
self.btn_page2.Bind(wx.EVT_BUTTON, self.go_page2)
self.btn_settongs.Bind(wx.EVT_BUTTON, self.run_settings)
def go_page2(self, event):
from gui import second_page
@@ -111,8 +118,9 @@ class MainFramePanel(wx.Panel):
self.frame.Hide()
second_page.run_page(self)
def run_settings(self, event):
from gui import MainSettings
MainSettings.run_page()
class MainFrame(wx.Frame):
def __init__(self, parent):
@@ -127,6 +135,7 @@ class MainFrame(wx.Frame):
if __name__ == "__main__":
print(" ")
app = wx.App(False)
frame = MainFrame(None)
frame.Show()

Binary file not shown.