Compare commits

...

6 Commits

Author SHA1 Message Date
e5b6aab981 Изменил(а) на 'README.md' 2022-08-18 07:36:28 +00:00
danamir
cc6df9ba7b Интерфейс 2018-08-17 18:06:19 +03:00
danamir
510790e2a2 Добавлены макеты интерфейса 2018-08-17 17:57:38 +03:00
danamir
75e9b9cf57 Кнопка "Настройки" теперь кликабельна.
Код почищен
2018-08-16 18:28:16 +03:00
danamir
a7ddada83f Кнопка "Настройки" теперь кликабельна.
Код почищен
2018-08-16 01:02:55 +03:00
unknown
51748ebd9b Пересохранен исходник макета 2018-07-20 07:11:00 +03:00
22 changed files with 998 additions and 75 deletions

2
.gitignore vendored
View File

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

View File

@@ -1 +1,3 @@
# My project's README # My project's README
Потом допишем всё остальное

Binary file not shown.

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()

68
gui/MainSettings.py Normal file
View File

@@ -0,0 +1,68 @@
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(200, 70))
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, style=wx.TE_PASSWORD)
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, None, -1, 'Title', style= wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX)
self.SetSizeHints(70, 70)
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()

Binary file not shown.

Binary file not shown.

Binary file not shown.

71
gui/labs.py Normal file
View File

@@ -0,0 +1,71 @@
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import wx
class SettingsMainFrame(wx.Frame):
def __init__(self, *args, **kwds):
wx.Frame.__init__(self, None, -1, 'Title', style= wx.SYSTEM_MENU | wx.CAPTION | wx.CLOSE_BOX)
self.SetSize((252, 143))
self.SettingsFramePanel = wx.Panel(self, wx.ID_ANY)
self.btn_add_lab = wx.Button(self.SettingsFramePanel, wx.ID_ANY, u"Добавить лабораторную работу")
self.btn_edit_lab = wx.Button(self.SettingsFramePanel, wx.ID_ANY, u"Редактировать лабораторную работу")
self.btn_del_lab = wx.Button(self.SettingsFramePanel, wx.ID_ANY, u"Удалить лабораторную работу")
self.__set_properties()
self.__do_layout()
self.Bind(wx.EVT_BUTTON, self.add_lab, self.btn_add_lab)
self.Bind(wx.EVT_BUTTON, self.edit_lab, self.btn_edit_lab)
self.Bind(wx.EVT_BUTTON, self.remove_lab, self.btn_del_lab)
def __set_properties(self):
self.SetTitle("frame")
self.btn_add_lab.SetMinSize((250, 26))
self.btn_edit_lab.SetMinSize((250, 37))
self.btn_del_lab.SetMinSize((250, 26))
def __do_layout(self):
sizer_1 = wx.BoxSizer(wx.VERTICAL)
sizer_2 = wx.BoxSizer(wx.VERTICAL)
sizer_2.Add(self.btn_add_lab, 0, 0, 0)
sizer_2.Add(self.btn_edit_lab, 0, 0, 0)
sizer_2.Add(self.btn_del_lab, 0, 0, 0)
self.SettingsFramePanel.SetSizer(sizer_2)
sizer_1.Add(self.SettingsFramePanel, 1, wx.EXPAND, 0)
self.SetSizer(sizer_1)
self.Layout()
def add_lab(self, event):
print("Event handler 'add_lab' not implemented!")
event.Skip()
def edit_lab(self, event):
print("Event handler 'edit_lab' not implemented!")
event.Skip()
def remove_lab(self, event):
print("Event handler 'remove_lab' not implemented!")
event.Skip()
class MyApp(wx.App):
def OnInit(self):
self.frame = SettingsMainFrame(None, wx.ID_ANY, "")
self.SetTopWindow(self.frame)
self.frame.Show()
return True
if __name__ == "__main__":
app = MyApp(0)
app.MainLoop()

View File

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

Binary file not shown.

View File

@@ -1,76 +1,68 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
###########################################################################
## Python code generated with wxFormBuilder (version Jul 11 2018)
## http://www.wxformbuilder.org/
##
## PLEASE DO *NOT* EDIT THIS FILE!
###########################################################################
import wx 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 ) class MyPanel1(wx.Panel):
def __del__( self ): def __init__(self, parent):
pass 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.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 MyPanel1
###########################################################################
class MyPanel1 ( wx.Panel ): class MyFrame1(wx.Frame):
def __init__( self, parent ): 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 ) 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)
bSizer3 = wx.BoxSizer( wx.VERTICAL ) self.SetSizeHints(wx.DefaultSize, wx.DefaultSize)
bSizer4 = wx.BoxSizer( wx.VERTICAL ) self.Centre(wx.BOTH)
panel = MyPanel1(self)
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
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 -*- # -*- coding: utf-8 -*-
import wx import wx
class MainFramePanel(wx.Panel): class MainFramePanel(wx.Panel):
def __init__(self, parent): def __init__(self, parent):
wx.Panel.__init__(self, parent, id=wx.ID_ANY, pos=wx.DefaultPosition, size=wx.Size(500, 500), 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) bSizer1.Add(gSizer1, 1, wx.EXPAND, 5)
self.SetSizer(bSizer1) self.SetSizer(bSizer1)
self._bindGuiEvents()
self.Layout() self.Layout()
self.btn_page2.Bind(wx.EVT_BUTTON, self.go_page2)
def empty_pole(self): def empty_pole(self):
dlg = wx.MessageDialog(self, 'Не все поля заполнены. Заполните все поля перед продолжением', 'Ошибка', wx.OK) dlg = wx.MessageDialog(self, 'Не все поля заполнены. Заполните все поля перед продолжением', 'Ошибка', wx.OK)
@@ -76,6 +79,10 @@ class MainFramePanel(wx.Panel):
if val == wx.ID_OK: if val == wx.ID_OK:
dlg.Destroy() 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): def go_page2(self, event):
from gui import second_page from gui import second_page
@@ -111,8 +118,9 @@ class MainFramePanel(wx.Panel):
self.frame.Hide() self.frame.Hide()
second_page.run_page(self) second_page.run_page(self)
def run_settings(self, event):
from gui import MainSettings
MainSettings.run_page()
class MainFrame(wx.Frame): class MainFrame(wx.Frame):
def __init__(self, parent): def __init__(self, parent):
@@ -127,6 +135,7 @@ class MainFrame(wx.Frame):
if __name__ == "__main__": if __name__ == "__main__":
print(" ")
app = wx.App(False) app = wx.App(False)
frame = MainFrame(None) frame = MainFrame(None)
frame.Show() frame.Show()

View File

@@ -0,0 +1,57 @@
<?xml version="1.0"?>
<!-- generated by wxGlade 0.8.3 on Fri Aug 17 17:55:47 2018 -->
<application class="MyApp" encoding="UTF-8" for_version="3.0" header_extension=".h" indent_amount="4" indent_symbol="space" is_template="0" language="python" name="app" option="0" overwrite="0" path="C:\Users\danamir\source\python\autodrob\src_gui\labs.py" source_extension=".cpp" top_window="frame" use_gettext="0" use_new_namespace="1">
<object class="SettingsMainFrame" name="frame" base="EditFrame">
<size>252, 116</size>
<title>frame</title>
<style>wxMINIMIZE_BOX|wxCLOSE_BOX|wxMAXIMIZE_BOX|wxSYSTEM_MENU|wxRESIZE_BORDER|wxCLIP_CHILDREN</style>
<sizehints>1</sizehints>
<object class="wxBoxSizer" name="sizer_1" base="EditBoxSizer">
<orient>wxVERTICAL</orient>
<object class="sizeritem">
<option>1</option>
<border>0</border>
<flag>wxEXPAND</flag>
<object class="wxPanel" name="SettingsFramePanel" base="EditPanel">
<object class="wxBoxSizer" name="sizer_2" base="EditBoxSizer">
<orient>wxVERTICAL</orient>
<object class="sizeritem">
<option>0</option>
<border>0</border>
<object class="wxButton" name="btn_add_lab" base="EditButton">
<events>
<handler event="EVT_BUTTON">add_lab</handler>
</events>
<size>250, 26</size>
<label>Добавить лабораторную работу</label>
</object>
</object>
<object class="sizeritem">
<option>0</option>
<border>0</border>
<object class="wxButton" name="btn_edit_lab" base="EditButton">
<events>
<handler event="EVT_BUTTON">edit_lab</handler>
</events>
<size>250, 37</size>
<label>Редактировать лабораторную работу\n</label>
</object>
</object>
<object class="sizeritem">
<option>0</option>
<border>0</border>
<object class="wxButton" name="btn_del_lab" base="EditButton">
<events>
<handler event="EVT_BUTTON">remove_lab</handler>
</events>
<size>250, 26</size>
<label>Удалить лабораторную работу</label>
</object>
</object>
</object>
</object>
</object>
</object>
</object>
</application>

483
src_gui/MainSettings.fbp Normal file
View File

@@ -0,0 +1,483 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<wxFormBuilder_Project>
<FileVersion major="1" minor="14" />
<object class="Project" expanded="1">
<property name="class_decoration"></property>
<property name="code_generation">C++</property>
<property name="disconnect_events">1</property>
<property name="disconnect_mode">source_name</property>
<property name="disconnect_php_events">0</property>
<property name="disconnect_python_events">0</property>
<property name="embedded_files_path">res</property>
<property name="encoding">UTF-8</property>
<property name="event_generation">connect</property>
<property name="file"></property>
<property name="first_id">1000</property>
<property name="help_provider">none</property>
<property name="indent_with_spaces"></property>
<property name="internationalize">0</property>
<property name="name">Settings</property>
<property name="namespace"></property>
<property name="path">.</property>
<property name="precompiled_header"></property>
<property name="relative_path">1</property>
<property name="skip_lua_events">1</property>
<property name="skip_php_events">1</property>
<property name="skip_python_events">1</property>
<property name="ui_table">UI</property>
<property name="use_enum">0</property>
<property name="use_microsoft_bom">0</property>
<object class="Frame" expanded="1">
<property name="aui_managed">0</property>
<property name="aui_manager_style">wxAUI_MGR_DEFAULT</property>
<property name="bg"></property>
<property name="center">wxBOTH</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="enabled">1</property>
<property name="event_handler">impl_virtual</property>
<property name="extra_style"></property>
<property name="fg"></property>
<property name="font"></property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="maximum_size"></property>
<property name="minimum_size"></property>
<property name="name">MainFrame</property>
<property name="pos"></property>
<property name="size">300,70</property>
<property name="style">wxDEFAULT_FRAME_STYLE</property>
<property name="subclass">; forward_declare</property>
<property name="title"></property>
<property name="tooltip"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
<property name="xrc_skip_sizer">1</property>
<event name="OnActivate"></event>
<event name="OnActivateApp"></event>
<event name="OnAuiPaneActivated"></event>
<event name="OnAuiPaneButton"></event>
<event name="OnAuiPaneClose"></event>
<event name="OnAuiPaneMaximize"></event>
<event name="OnAuiPaneRestore"></event>
<event name="OnAuiRender"></event>
<event name="OnAux1DClick"></event>
<event name="OnAux1Down"></event>
<event name="OnAux1Up"></event>
<event name="OnAux2DClick"></event>
<event name="OnAux2Down"></event>
<event name="OnAux2Up"></event>
<event name="OnChar"></event>
<event name="OnCharHook"></event>
<event name="OnClose"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnHibernate"></event>
<event name="OnIconize"></event>
<event name="OnIdle"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMaximize"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnMove"></event>
<event name="OnMoveEnd"></event>
<event name="OnMoveStart"></event>
<event name="OnMoving"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnShow"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
<object class="Panel" expanded="1">
<property name="aui_managed">0</property>
<property name="aui_manager_style">wxAUI_MGR_DEFAULT</property>
<property name="bg"></property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="enabled">1</property>
<property name="event_handler">impl_virtual</property>
<property name="fg"></property>
<property name="font"></property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="maximum_size"></property>
<property name="minimum_size"></property>
<property name="name">MainPanel</property>
<property name="pos"></property>
<property name="size">300,70</property>
<property name="subclass">; forward_declare</property>
<property name="tooltip"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style">wxTAB_TRAVERSAL</property>
<event name="OnAuiPaneActivated"></event>
<event name="OnAuiPaneButton"></event>
<event name="OnAuiPaneClose"></event>
<event name="OnAuiPaneMaximize"></event>
<event name="OnAuiPaneRestore"></event>
<event name="OnAuiRender"></event>
<event name="OnAux1DClick"></event>
<event name="OnAux1Down"></event>
<event name="OnAux1Up"></event>
<event name="OnAux2DClick"></event>
<event name="OnAux2Down"></event>
<event name="OnAux2Up"></event>
<event name="OnChar"></event>
<event name="OnCharHook"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnInitDialog"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
<object class="wxBoxSizer" expanded="1">
<property name="minimum_size"></property>
<property name="name">bSizer1</property>
<property name="orient">wxVERTICAL</property>
<property name="permission">none</property>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxEXPAND</property>
<property name="proportion">1</property>
<object class="wxFlexGridSizer" expanded="1">
<property name="cols">3</property>
<property name="flexible_direction">wxBOTH</property>
<property name="growablecols"></property>
<property name="growablerows"></property>
<property name="hgap">0</property>
<property name="minimum_size"></property>
<property name="name">fgSizer1</property>
<property name="non_flexible_grow_mode">wxFLEX_GROWMODE_SPECIFIED</property>
<property name="permission">none</property>
<property name="rows">0</property>
<property name="vgap">0</property>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxALL</property>
<property name="proportion">0</property>
<object class="wxStaticText" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="label">Введите пароль</property>
<property name="markup">0</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_staticText2</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass">; forward_declare</property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<property name="wrap">-1</property>
<event name="OnAux1DClick"></event>
<event name="OnAux1Down"></event>
<event name="OnAux1Up"></event>
<event name="OnAux2DClick"></event>
<event name="OnAux2Down"></event>
<event name="OnAux2Up"></event>
<event name="OnChar"></event>
<event name="OnCharHook"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxALL|wxALIGN_CENTER_HORIZONTAL</property>
<property name="proportion">0</property>
<object class="wxTextCtrl" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="default_pane">0</property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="maxlength"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">m_textCtrl2</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size"></property>
<property name="style"></property>
<property name="subclass">; forward_declare</property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="value"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnAux1DClick"></event>
<event name="OnAux1Down"></event>
<event name="OnAux1Up"></event>
<event name="OnAux2DClick"></event>
<event name="OnAux2Down"></event>
<event name="OnAux2Up"></event>
<event name="OnChar"></event>
<event name="OnCharHook"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnText"></event>
<event name="OnTextEnter"></event>
<event name="OnTextMaxLen"></event>
<event name="OnTextURL"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
<object class="sizeritem" expanded="1">
<property name="border">5</property>
<property name="flag">wxALL</property>
<property name="proportion">0</property>
<object class="wxButton" expanded="1">
<property name="BottomDockable">1</property>
<property name="LeftDockable">1</property>
<property name="RightDockable">1</property>
<property name="TopDockable">1</property>
<property name="aui_layer"></property>
<property name="aui_name"></property>
<property name="aui_position"></property>
<property name="aui_row"></property>
<property name="best_size"></property>
<property name="bg"></property>
<property name="bitmap"></property>
<property name="caption"></property>
<property name="caption_visible">1</property>
<property name="center_pane">0</property>
<property name="close_button">1</property>
<property name="context_help"></property>
<property name="context_menu">1</property>
<property name="current"></property>
<property name="default">0</property>
<property name="default_pane">0</property>
<property name="disabled"></property>
<property name="dock">Dock</property>
<property name="dock_fixed">0</property>
<property name="docking">Left</property>
<property name="enabled">1</property>
<property name="fg"></property>
<property name="floatable">1</property>
<property name="focus"></property>
<property name="font"></property>
<property name="gripper">0</property>
<property name="hidden">0</property>
<property name="id">wxID_ANY</property>
<property name="label">OK</property>
<property name="margins"></property>
<property name="markup">0</property>
<property name="max_size"></property>
<property name="maximize_button">0</property>
<property name="maximum_size"></property>
<property name="min_size"></property>
<property name="minimize_button">0</property>
<property name="minimum_size"></property>
<property name="moveable">1</property>
<property name="name">btn_ok</property>
<property name="pane_border">1</property>
<property name="pane_position"></property>
<property name="pane_size"></property>
<property name="permission">protected</property>
<property name="pin_button">1</property>
<property name="pos"></property>
<property name="position"></property>
<property name="pressed"></property>
<property name="resize">Resizable</property>
<property name="show">1</property>
<property name="size">60,-1</property>
<property name="style"></property>
<property name="subclass">; forward_declare</property>
<property name="toolbar_pane">0</property>
<property name="tooltip"></property>
<property name="validator_data_type"></property>
<property name="validator_style">wxFILTER_NONE</property>
<property name="validator_type">wxDefaultValidator</property>
<property name="validator_variable"></property>
<property name="window_extra_style"></property>
<property name="window_name"></property>
<property name="window_style"></property>
<event name="OnAux1DClick"></event>
<event name="OnAux1Down"></event>
<event name="OnAux1Up"></event>
<event name="OnAux2DClick"></event>
<event name="OnAux2Down"></event>
<event name="OnAux2Up"></event>
<event name="OnButtonClick"></event>
<event name="OnChar"></event>
<event name="OnCharHook"></event>
<event name="OnEnterWindow"></event>
<event name="OnEraseBackground"></event>
<event name="OnKeyDown"></event>
<event name="OnKeyUp"></event>
<event name="OnKillFocus"></event>
<event name="OnLeaveWindow"></event>
<event name="OnLeftDClick"></event>
<event name="OnLeftDown"></event>
<event name="OnLeftUp"></event>
<event name="OnMiddleDClick"></event>
<event name="OnMiddleDown"></event>
<event name="OnMiddleUp"></event>
<event name="OnMotion"></event>
<event name="OnMouseEvents"></event>
<event name="OnMouseWheel"></event>
<event name="OnPaint"></event>
<event name="OnRightDClick"></event>
<event name="OnRightDown"></event>
<event name="OnRightUp"></event>
<event name="OnSetFocus"></event>
<event name="OnSize"></event>
<event name="OnUpdateUI"></event>
</object>
</object>
</object>
</object>
</object>
</object>
</object>
</wxFormBuilder_Project>

81
src_gui/labs.py Normal file
View File

@@ -0,0 +1,81 @@
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
#
# generated by wxGlade 0.8.3 on Fri Aug 17 15:44:00 2018
#
import wx
# begin wxGlade: dependencies
# end wxGlade
# begin wxGlade: extracode
# end wxGlade
class SettingsMainFrame(wx.Frame):
def __init__(self, *args, **kwds):
# begin wxGlade: SettingsMainFrame.__init__
kwds["style"] = kwds.get("style", 0) | wx.DEFAULT_FRAME_STYLE
wx.Frame.__init__(self, *args, **kwds)
self.SetSize((252, 143))
self.SettingsFramePanel = wx.Panel(self, wx.ID_ANY)
self.btn_add_lab = wx.Button(self.SettingsFramePanel, wx.ID_ANY, u"\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443")
self.btn_edit_lab = wx.Button(self.SettingsFramePanel, wx.ID_ANY, u"\u0420\u0435\u0434\u0430\u043a\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443\n")
self.btn_del_lab = wx.Button(self.SettingsFramePanel, wx.ID_ANY, u"\u0423\u0434\u0430\u043b\u0438\u0442\u044c \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443")
self.__set_properties()
self.__do_layout()
self.Bind(wx.EVT_BUTTON, self.add_lab, self.btn_add_lab)
self.Bind(wx.EVT_BUTTON, self.edit_lab, self.btn_edit_lab)
self.Bind(wx.EVT_BUTTON, self.remove_lab, self.btn_del_lab)
# end wxGlade
def __set_properties(self):
# begin wxGlade: SettingsMainFrame.__set_properties
self.SetTitle("frame")
self.btn_add_lab.SetMinSize((250, 26))
self.btn_edit_lab.SetMinSize((250, 37))
self.btn_del_lab.SetMinSize((250, 26))
# end wxGlade
def __do_layout(self):
# begin wxGlade: SettingsMainFrame.__do_layout
sizer_1 = wx.BoxSizer(wx.VERTICAL)
sizer_2 = wx.BoxSizer(wx.VERTICAL)
sizer_2.Add(self.btn_add_lab, 0, 0, 0)
sizer_2.Add(self.btn_edit_lab, 0, 0, 0)
sizer_2.Add(self.btn_del_lab, 0, 0, 0)
self.SettingsFramePanel.SetSizer(sizer_2)
sizer_1.Add(self.SettingsFramePanel, 1, wx.EXPAND, 0)
self.SetSizer(sizer_1)
self.Layout()
# end wxGlade
def add_lab(self, event): # wxGlade: SettingsMainFrame.<event_handler>
print("Event handler 'add_lab' not implemented!")
event.Skip()
def edit_lab(self, event): # wxGlade: SettingsMainFrame.<event_handler>
print("Event handler 'edit_lab' not implemented!")
event.Skip()
def remove_lab(self, event): # wxGlade: SettingsMainFrame.<event_handler>
print("Event handler 'remove_lab' not implemented!")
event.Skip()
# end of class SettingsMainFrame
class MyApp(wx.App):
def OnInit(self):
self.frame = SettingsMainFrame(None, wx.ID_ANY, "")
self.SetTopWindow(self.frame)
self.frame.Show()
return True
# end of class MyApp
if __name__ == "__main__":
app = MyApp(0)
app.MainLoop()

56
src_gui/labs.wxg Normal file
View File

@@ -0,0 +1,56 @@
<?xml version="1.0"?>
<!-- generated by wxGlade 0.8.3 on Fri Aug 17 15:43:47 2018 -->
<application class="MyApp" encoding="UTF-8" for_version="3.0" header_extension=".h" indent_amount="4" indent_symbol="space" is_template="0" language="python" name="app" option="0" overwrite="0" path="./wxglade_out.py" source_extension=".cpp" top_window="frame" use_gettext="0" use_new_namespace="1">
<object class="SettingsMainFrame" name="frame" base="EditFrame">
<size>252, 143</size>
<title>frame</title>
<style>wxDEFAULT_FRAME_STYLE</style>
<object class="wxBoxSizer" name="sizer_1" base="EditBoxSizer">
<orient>wxVERTICAL</orient>
<object class="sizeritem">
<option>1</option>
<border>0</border>
<flag>wxEXPAND</flag>
<object class="wxPanel" name="SettingsFramePanel" base="EditPanel">
<object class="wxBoxSizer" name="sizer_2" base="EditBoxSizer">
<orient>wxVERTICAL</orient>
<object class="sizeritem">
<option>0</option>
<border>0</border>
<object class="wxButton" name="btn_add_lab" base="EditButton">
<events>
<handler event="EVT_BUTTON">add_lab</handler>
</events>
<size>250, 26</size>
<label>Добавить лабораторную работу</label>
</object>
</object>
<object class="sizeritem">
<option>0</option>
<border>0</border>
<object class="wxButton" name="btn_edit_lab" base="EditButton">
<events>
<handler event="EVT_BUTTON">edit_lab</handler>
</events>
<size>250, 37</size>
<label>Редактировать лабораторную работу\n</label>
</object>
</object>
<object class="sizeritem">
<option>0</option>
<border>0</border>
<object class="wxButton" name="btn_del_lab" base="EditButton">
<events>
<handler event="EVT_BUTTON">remove_lab</handler>
</events>
<size>250, 26</size>
<label>Удалить лабораторную работу</label>
</object>
</object>
</object>
</object>
</object>
</object>
</object>
</application>

BIN
src_gui/maket/AutoDrob.bmpr Normal file

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB