diff --git a/db/odd.db b/db/odd.db index ca32ec9..9470118 100644 Binary files a/db/odd.db and b/db/odd.db differ diff --git a/gui/SecondPage.py b/gui/SecondPage.py index a0a2150..519d737 100644 --- a/gui/SecondPage.py +++ b/gui/SecondPage.py @@ -1,26 +1,48 @@ import wx import random -import os import controller +import os +import logging +import platform -class SeconPageFrame(wx.Frame): +class SecondPageFrame(wx.Frame): + #Логирование + #срез 18 def __init__(self, *args, **kwds): - # begin wxGlade: SeconPageFrame.__init__ + + logging.basicConfig(filename="..\\app.log", + filemode='a', + format='%(asctime)s,%(msecs)d %(name)s %(levelname)s %(message)s', + datefmt='%H:%M:%S', + level=logging.DEBUG) + + logging.info("second page runing") + kwds["style"] = kwds.get("style", 0) | wx.DEFAULT_FRAME_STYLE wx.Frame.__init__(self, *args, **kwds) - self.SetSize((800, 600)) + self.SetSize((600, 800)) self.panel_1 = wx.Panel(self, wx.ID_ANY) - #self.panel_1.SetBackgroundColour(self.color) - self.radio_btn_2 = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Крестообразный") - self.radio_btn_3 = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Т-образный") - self.text_ctrl_1 = wx.TextCtrl(self.panel_1, wx.ID_ANY, "", style = wx.TE_PROCESS_ENTER) - self.text_ctrl_2 = wx.TextCtrl(self.panel_1, wx.ID_ANY, "", style = wx.TE_PROCESS_ENTER) - self.text_ctrl_1.Bind(wx.EVT_TEXT_ENTER, self.proverka_vvoda) - self.text_ctrl_2.Bind(wx.EVT_TEXT_ENTER, self.proverka_vvoda) - self.radio_btn_2.SetValue(True) + + + # self.panel_1.SetBackgroundColour(self.color) + self.radio_krest = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Крестообразный") + self.radio_t_obr = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Т-образный") + self.shir_horiz = wx.TextCtrl(self.panel_1, wx.ID_ANY, "", style=wx.TE_PROCESS_ENTER) + self.shir_vert = wx.TextCtrl(self.panel_1, wx.ID_ANY, "", style=wx.TE_PROCESS_ENTER) + self.radio_krest.SetValue(True) + + self.shir_horiz.Bind(wx.EVT_TEXT_ENTER, self.proverka_vvoda) + self.shir_vert.Bind(wx.EVT_TEXT_ENTER, self.proverka_vvoda) + + + self.runPath = os.path.abspath(__file__) + print(self.runPath) + if platform.system() == "Windows": + self.imgPath = "..\\img\\" + self.__set_properties() self.__do_layout() @@ -29,10 +51,10 @@ class SeconPageFrame(wx.Frame): def scale_bitmap(self, bitmap, width, height): self.w = width self.h = height - image = wx.Image(bitmap) - image = image.Scale(self.w, self.h, wx.IMAGE_QUALITY_HIGH) - result = wx.Bitmap(image) - return result + self.image = wx.Image(bitmap) + self.image = self.image.Scale(self.w, self.h, wx.IMAGE_QUALITY_HIGH) + self.result = wx.Bitmap(self.image) + return self.result def __set_properties(self): # begin wxGlade: SeconPageFrame.__set_properties @@ -41,94 +63,90 @@ class SeconPageFrame(wx.Frame): self.color = controller.setBacgroundColor() self.SetBackgroundColour(self.color) self.btnColor = controller.setBckgroundButtonColor() - #self.btn2.SetBackgroundColour(self.btnColor) + # self.btn2.SetBackgroundColour(self.btnColor) def __do_layout(self): - # begin wxGlade: SeconPageFrame.__do_layout - sizer_1 = wx.BoxSizer(wx.VERTICAL) - sizer_2 = wx.StaticBoxSizer(wx.StaticBox(self.panel_1, wx.ID_ANY, "sizer_2"), wx.VERTICAL) - grid_sizer_2 = wx.FlexGridSizer(1, 6, 0, 0) - grid_sizer_3 = wx.GridSizer(0, 2, 0, 0) - grid_sizer_1 = wx.GridSizer(0, 4, 0, 0) - label_1 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Исходные данные для расчета") - label_1.SetFont(wx.Font(18, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, "")) - sizer_2.Add(label_1, 0, wx.ALIGN_CENTER | wx.ALL, 10) + print(self.runPath) + print(self.imgPath) + print(platform.system()) - label_7 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория \n Горизональной улицы") - grid_sizer_1.Add(label_7, 0, wx.ALIGN_CENTER | wx.ALL, 10) + self.sizer_1 = wx.BoxSizer(wx.VERTICAL) + self.sizer_2 = wx.StaticBoxSizer(wx.StaticBox(self.panel_1, wx.ID_ANY, ""), wx.VERTICAL) + self.grid_sizer_2 = wx.FlexGridSizer(1, 6, 0, 0) + self.grid_sizer_3 = wx.GridSizer(0, 2, 0, 0) + self.grid_sizer_1 = wx.GridSizer(0, 4, 0, 0) + + self.label_ish_dan = wx.StaticText(self.panel_1, wx.ID_ANY, u"Исходные данные для расчета") + self.label_ish_dan.SetFont(wx.Font(18, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, "")) + self.sizer_2.Add(self.label_ish_dan, 0, wx.ALIGN_CENTER | wx.ALL, 10) + + self.label_kat_horiz = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория \n Горизональной улицы") + self.grid_sizer_1.Add(self.label_kat_horiz, 0, wx.ALIGN_CENTER | wx.ALL, 10) self.katHorizont = wx.StaticText(self.panel_1, wx.ID_ANY, "", style=wx.ALIGN_CENTER) - grid_sizer_1.Add(self.katHorizont, 0, wx.ALIGN_CENTER, 0) + self.grid_sizer_1.Add(self.katHorizont, 0, wx.ALIGN_CENTER, 0) - label_9 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория \n Вертикальной улицы") - grid_sizer_1.Add(label_9, 0, wx.ALIGN_CENTER, 0) + self.label_kat_vert = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория \n Вертикальной улицы") + self.grid_sizer_1.Add(self.label_kat_vert, 0, wx.ALIGN_CENTER, 0) self.katVertical = wx.StaticText(self.panel_1, wx.ID_ANY, "") - grid_sizer_1.Add(self.katVertical, 0, wx.ALIGN_CENTER, 0) + self.katVertical = wx.StaticText(self.panel_1, wx.ID_ANY, "") + self.grid_sizer_1.Add(self.katVertical, 0, wx.ALIGN_CENTER, 0) - label_11 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос \n Горизонтальной улицы") - grid_sizer_1.Add(label_11, 0, wx.ALIGN_CENTER, 0) + self.label_11 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос \n Горизонтальной улицы") + self.grid_sizer_1.Add(self.label_11, 0, wx.ALIGN_CENTER, 0) self.kolvoPolosHorizont = wx.StaticText(self.panel_1, wx.ID_ANY, "", style=wx.ALIGN_CENTER) - grid_sizer_1.Add(self.kolvoPolosHorizont, 0, wx.ALIGN_CENTER, 0) + self.grid_sizer_1.Add(self.kolvoPolosHorizont, 0, wx.ALIGN_CENTER, 0) - label_13 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос \n Вертикальной улицы") - grid_sizer_1.Add(label_13, 0, wx.ALIGN_CENTER, 0) + self.label_13 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос \n Вертикальной улицы") + self.grid_sizer_1.Add(self.label_13, 0, wx.ALIGN_CENTER, 0) self.kolvoPolosVert = wx.StaticText(self.panel_1, wx.ID_ANY, "") - grid_sizer_1.Add(self.kolvoPolosVert, 0, wx.ALIGN_CENTER, 0) - sizer_2.Add(grid_sizer_1, 1, wx.EXPAND, 0) + self.grid_sizer_1.Add(self.kolvoPolosVert, 0, wx.ALIGN_CENTER, 0) + self.sizer_2.Add(self.grid_sizer_1, 1, wx.EXPAND, 0) - label_18 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Выберите тип пересечения") - label_18.SetFont(wx.Font(14, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, "")) - sizer_2.Add(label_18, 0, wx.ALL, 9) - grid_sizer_3.Add(self.radio_btn_2, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) - grid_sizer_3.Add(self.radio_btn_3, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) + self.label_18 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Выберите тип пересечения") + self.label_18.SetFont(wx.Font(14, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, "")) + self.sizer_2.Add(self.label_18, 0, wx.ALL, 9) + self.grid_sizer_3.Add(self.radio_krest, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) + self.grid_sizer_3.Add(self.radio_t_obr, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) - self.imgor = "..\\img\\perekr-4.jpg" - self.img = self.scale_bitmap(self.imgor, 150, 150) - self.bitmap_4 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap(100, 100, wx.BITMAP_TYPE_ANY), style=wx.BORDER_NONE) - self.bitmap_4.SetBitmap(wx.Bitmap(self.img)) - grid_sizer_3.Add(self.bitmap_4, 0, wx.ALIGN_CENTER, 0) - self.bitmap_5 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap(100, 100, wx.BITMAP_TYPE_ANY)) - grid_sizer_3.Add(self.bitmap_5, 0, 0, 0) - sizer_2.Add(grid_sizer_3, 1, wx.EXPAND, 0) + self.label_15 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Необходимо расчитать:") + self.label_15.SetFont(wx.Font(14, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, "")) + self.sizer_2.Add(self.label_15, 0, 0, 0) + self.label_16 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части \n Горизонтальной улицы") + self.grid_sizer_2.Add(self.label_16, 0, wx.ALIGN_CENTER_VERTICAL | wx.LEFT | wx.RIGHT, 0) + self.grid_sizer_2.Add(self.shir_horiz, 0, wx.ALIGN_CENTER, 0) - label_15 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Необходимо расчитать:") - label_15.SetFont(wx.Font(14, wx.DEFAULT, wx.NORMAL, wx.BOLD, 0, "")) - sizer_2.Add(label_15, 0, 0, 0) - label_16 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части \n Горизонтальной улицы") - grid_sizer_2.Add(label_16, 0, wx.ALIGN_CENTER_VERTICAL | wx.LEFT | wx.RIGHT, 0) - grid_sizer_2.Add(self.text_ctrl_1, 0, wx.ALIGN_CENTER, 0) + self.bitmap_2 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap(100, 100, wx.BITMAP_TYPE_ANY)) + self.bitmap_2.Hide() + self.grid_sizer_2.Add(self.bitmap_2, 0, 0, 0) - bitmap_2 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap(100, 100, wx.BITMAP_TYPE_ANY)) - bitmap_2.Hide() - grid_sizer_2.Add(bitmap_2, 0, 0, 0) + self.label_17 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части \n Вертикальной улицы") + self.grid_sizer_2.Add(self.label_17, 0, 0, 0) + self.grid_sizer_2.Add(self.shir_vert, 0, wx.ALIGN_CENTER, 0) - label_17 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части \n Вертикальной улицы") - grid_sizer_2.Add(label_17, 0, 0, 0) - grid_sizer_2.Add(self.text_ctrl_2, 0, wx.ALIGN_CENTER, 0) - - bitmap_3 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap(100, 100, wx.BITMAP_TYPE_ANY)) - grid_sizer_2.Add(bitmap_3, 0, 0, 0) - sizer_2.Add(grid_sizer_2, 1, wx.EXPAND, 0) + self.bitmap_3 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap(100, 100, wx.BITMAP_TYPE_ANY)) + self.grid_sizer_2.Add(self.bitmap_3, 0, 0, 0) + self.sizer_2.Add(self.grid_sizer_2, 1, wx.EXPAND, 0) self.button_1 = wx.Button(self.panel_1, wx.ID_ANY, "Далее") - sizer_2.Add(self.button_1, 0, wx.ALIGN_RIGHT, 0) + self.sizer_2.Add(self.button_1, 0, wx.ALIGN_RIGHT, 0) - self.panel_1.SetSizer(sizer_2) - sizer_1.Add(self.panel_1, 1, wx.EXPAND, 0) - self.SetSizer(sizer_1) + self.panel_1.SetSizer(self.sizer_2) + self.sizer_1.Add(self.panel_1, 1, wx.EXPAND, 0) + self.SetSizer(self.sizer_1) self.Layout() def good(self): - self.img1 = "../img/123.jpg" + self.img1 = self.imgPath + "123.jpg" self.img4 = self.scale_bitmap(self.img1, 50, 50) self.bitmap_2.SetBitmap(wx.Bitmap(self.img1)) self.bitmap_2.Show() self.Refresh() def bad(self): - self.img2 = "../img/bad.jpg" - self.img3 = self.scale_bitmap(self.img2, 70, 50) + self.img1 = self.imgPath + "bad.jpg" + self.img3 = self.scale_bitmap(self.img1, 70, 50) self.bitmap_3.SetBitmap(wx.Bitmap(self.img3)) self.bitmap_3.Show() self.Refresh() @@ -145,15 +163,15 @@ class SeconPageFrame(wx.Frame): print(self.pr_hor) print(self.pr_Vert) - if len(self.text_ctrl_1.GetValue()) > 0: - if str(self.pr_hor) == self.text_ctrl_1.GetValue(): + if len(self.shir_horiz.GetValue()) > 0: + if str(self.pr_hor) == self.shir_horiz.GetValue(): self.file = open("123", "w").close() self.file = open("123", "w") - self.file.writelines(self.text_ctrl_1.GetValue() + "\n") + self.file.writelines(self.shir_horiz.GetValue() + "\n") self.file.close() print("good") self.bitmap_2.Hide() - self.img1 = "../img/123.jpg" + self.img1 = self.imgPath + "123.jpg" self.img4 = self.scale_bitmap(self.img1, 50, 50) self.bitmap_2.SetBitmap(wx.Bitmap(self.img4)) self.bitmap_2.Show() @@ -161,18 +179,18 @@ class SeconPageFrame(wx.Frame): else: print("bad") self.bitmap_2.Hide() - self.img2 = "../img/bad.jpg" - self.img3 = self.scale_bitmap(self.img2, 70, 50) + self.img1 = self.imgPath + "bad.jpg" + self.img3 = self.scale_bitmap(self.img1, 70, 50) self.bitmap_2.SetBitmap(wx.Bitmap(self.img3)) self.bitmap_2.Show() - self.text_ctrl_1.SetValue(str(self.pr_hor)) + self.shir_horiz.SetValue(str(self.pr_hor)) self.Refresh() - if len(self.text_ctrl_2.GetValue()) > 0: - if str(self.pr_Vert) == self.text_ctrl_2.GetValue() and len(self.text_ctrl_2.GetValue()) > 0: + if len(self.shir_vert.GetValue()) > 0: + if str(self.pr_Vert) == self.shir_vert.GetValue() and len(self.shir_vert.GetValue()) > 0: print("good") self.bitmap_3.Hide() - self.img1 = "../img/123.jpg" + self.img1 = self.imgPath + "123.jpg" self.img4 = self.scale_bitmap(self.img1, 50, 50) self.bitmap_3.SetBitmap(wx.Bitmap(self.img4)) self.bitmap_3.Show() @@ -180,18 +198,18 @@ class SeconPageFrame(wx.Frame): else: print("Bad") self.bitmap_3.Hide() - self.img2 = "../img/bad.jpg" - self.img3 = self.scale_bitmap(self.img2, 70, 50) + self.img1 = self.imgPath + "bad.jpg" + self.img3 = self.scale_bitmap(self.img1, 70, 50) self.bitmap_3.SetBitmap(wx.Bitmap(self.img3)) self.bitmap_3.Show() - self.text_ctrl_2.SetValue(str(self.pr_Vert)) + self.shir_vert.SetValue(str(self.pr_Vert)) self.Refresh() def proverka_radiobtn(self): self.s = 1 - print(self.radio_btn_2.GetValue()) - print(self.radio_btn_3.GetValue()) - if self.radio_btn_2.GetValue() == self.radio_btn_2.GetValue(): + print(self.radio_krest.GetValue()) + print(self.radio_t_obr.GetValue()) + if self.radio_krest.GetValue() == self.radio_krest.GetValue(): self.error_radio_btn() self.s = 0 return self.s @@ -201,13 +219,15 @@ class SeconPageFrame(wx.Frame): page3.Page3.OnInit(page3) self.Destroy() + class SecondPage(wx.App): def OnInit(self): - self.frame = SeconPageFrame(None, wx.ID_ANY, "") + self.frame = SecondPageFrame(None, wx.ID_ANY) self.frame.Show() + self.frame.Center() + return True -# end of class SecondPage if __name__ == "__main__": SeconPage = SecondPage(0) diff --git a/gui/page3.py b/gui/page3.py index 97039ec..ba0a271 100755 --- a/gui/page3.py +++ b/gui/page3.py @@ -618,9 +618,11 @@ class Page3Frame(wx.Frame): self.text_ctrl_1.SetValue(str(self.s1)) self.Refresh() def gopage4(self, event): - from gui import page4 - page4.MyApp.OnInit(page4) - self.Destroy() + #from gui import page4 + #page4.MyApp.OnInit(page4) + #self.Destroy() + pass + class Page3(wx.App): diff --git a/img/bad.png b/img/bad.png new file mode 100644 index 0000000..9783ba7 Binary files /dev/null and b/img/bad.png differ diff --git a/img/perekr-4.jpg b/img/perekr4.jpg similarity index 100% rename from img/perekr-4.jpg rename to img/perekr4.jpg diff --git a/main.py b/main.py index 3d5137e..4db5fcf 100644 --- a/main.py +++ b/main.py @@ -5,21 +5,26 @@ from db.models import Student from sqlalchemy import exists from db.models import Session from gui import SecondPage - import logging +import platform import os -logging.basicConfig(filename="app.log", + +#\ - винда | - другие ос + + +class MyFrame(wx.Frame): + def __init__(self, *args, **kwds): + + logging.basicConfig(filename="app.log", filemode='a', format='%(asctime)s,%(msecs)d %(name)s %(levelname)s %(message)s', datefmt='%H:%M:%S', level=logging.DEBUG) -logging.info("Running Urban Planning") + logging.info("main page runing") -class MyFrame(wx.Frame): - def __init__(self, *args, **kwds): # begin wxGlade: MyFrame.__init__ kwds["style"] = kwds.get("style", 0) | wx.DEFAULT_FRAME_STYLE wx.Frame.__init__(self, *args, **kwds) @@ -28,7 +33,7 @@ class MyFrame(wx.Frame): self.inpt_familia = wx.TextCtrl(self.panel_1, wx.ID_ANY, "") self.inpt_group = wx.TextCtrl(self.panel_1, wx.ID_ANY, "") self.inpt_zachetka = wx.TextCtrl(self.panel_1, wx.ID_ANY, "") - self.btn_settings = wx.Button(self.panel_1, wx.ID_ANY, u"\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438") + self.btn_settings = wx.Button(self.panel_1, wx.ID_ANY, u"Настройки") self.btn_next = wx.Button(self.panel_1, wx.ID_ANY, u"\u0414\u0430\u043b\u0435\u0435") self.btn_settings.Bind(wx.EVT_BUTTON, self.setup) @@ -103,9 +108,6 @@ class MyFrame(wx.Frame): dlg.Destroy() def go_page2(self, event): - - - name = self.inpt_name.GetValue() name = name.replace(' ', '') @@ -136,13 +138,10 @@ class MyFrame(wx.Frame): new_session.add(student) new_session.commit() - + from gui import SecondPage SecondPage.SecondPage.OnInit(SecondPage) self.Destroy() - - - # todo Перенести весь функционал из main.py # todo Подключить логирование # todo Настроить относительные пути к ресурсам @@ -150,7 +149,7 @@ class MyFrame(wx.Frame): def setup(self): - pass + print("Setup pressed") class MyApp(wx.App): diff --git a/src/page1.wxg b/src/page1.wxg new file mode 100644 index 0000000..87b1ac3 --- /dev/null +++ b/src/page1.wxg @@ -0,0 +1,227 @@ + + + + + + 800, 600 + frame + + + wxVERTICAL + + + 0 + wxEXPAND + + + wxVERTICAL + + + 20 + wxLEFT|wxRIGHT|wxBOTTOM|wxALIGN_CENTER + + + 14 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 5 + wxALL + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxEXPAND + + 0 + 2 + 0 + 0 + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + + 0 + wxEXPAND + + 0 + 2 + 0 + 0 + + + 0 + wxALIGN_BOTTOM + + 100, 50 + + + + + + 0 + wxALIGN_RIGHT|wxALIGN_BOTTOM + + 100, 50 + + + + + + + + + + + diff --git a/src/page1.wxg.bak b/src/page1.wxg.bak new file mode 100644 index 0000000..22835d0 --- /dev/null +++ b/src/page1.wxg.bak @@ -0,0 +1,226 @@ + + + + + + 1200, 600 + frame + + + wxVERTICAL + + + 0 + wxEXPAND + + + wxVERTICAL + + + 20 + wxLEFT|wxRIGHT|wxBOTTOM|wxALIGN_CENTER + + + 14 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxEXPAND + + 0 + 2 + 0 + 0 + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + 0 + wxALIGN_CENTER + + + 12 + default + + normal + 0 + + + + + + + + + 0 + wxEXPAND + + 0 + 2 + 0 + 0 + + + 0 + wxALIGN_BOTTOM + + 100, 50 + + + + + + 0 + wxALIGN_RIGHT|wxALIGN_BOTTOM + + 100, 50 + + + + + + + + + + + diff --git a/src/second_page.py b/src/second_page.py new file mode 100644 index 0000000..a87c300 --- /dev/null +++ b/src/second_page.py @@ -0,0 +1,130 @@ +#!/usr/bin/env python3 +# -*- coding: UTF-8 -*- +# +# generated by wxGlade 1.1.0pre on Sun Jun 6 15:00:40 2021 +# + +import wx + +# begin wxGlade: dependencies +# end wxGlade + +# begin wxGlade: extracode +# end wxGlade + + +class SeconPageFrame(wx.Frame): + def __init__(self, *args, **kwds): + # begin wxGlade: SeconPageFrame.__init__ + kwds["style"] = kwds.get("style", 0) | wx.DEFAULT_FRAME_STYLE + wx.Frame.__init__(self, *args, **kwds) + self.SetSize((800, 780)) + self.SetTitle("frame") + + sizer_1 = wx.BoxSizer(wx.VERTICAL) + + self.panel_1 = wx.Panel(self, wx.ID_ANY) + sizer_1.Add(self.panel_1, 1, wx.EXPAND, 0) + + sizer_2 = wx.StaticBoxSizer(wx.StaticBox(self.panel_1, wx.ID_ANY, "sizer_2"), wx.VERTICAL) + + label_1 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Исходные данные для расчета\n") + label_1.SetFont(wx.Font(18, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + sizer_2.Add(label_1, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.ALL, 0) + + grid_sizer_1 = wx.GridSizer(0, 4, 0, 0) + sizer_2.Add(grid_sizer_1, 1, wx.EXPAND, 0) + + label_7 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория\nГоризональной улицы") + grid_sizer_1.Add(label_7, 0, wx.ALIGN_CENTER | wx.ALL, 10) + + label_8 = wx.StaticText(self.panel_1, wx.ID_ANY, "", style=wx.ALIGN_CENTER_HORIZONTAL) + grid_sizer_1.Add(label_8, 0, wx.ALIGN_CENTER, 0) + + label_9 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория \nВертикальной улицы") + grid_sizer_1.Add(label_9, 0, wx.ALIGN_CENTER, 0) + + label_10 = wx.StaticText(self.panel_1, wx.ID_ANY, "") + grid_sizer_1.Add(label_10, 0, wx.ALIGN_CENTER, 0) + + label_11 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос\nГоризонтальной улицы") + grid_sizer_1.Add(label_11, 0, wx.ALIGN_CENTER, 0) + + label_12 = wx.StaticText(self.panel_1, wx.ID_ANY, "", style=wx.ALIGN_CENTER_HORIZONTAL) + grid_sizer_1.Add(label_12, 0, wx.ALIGN_CENTER, 0) + + label_13 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос \nВертикальной улицы") + grid_sizer_1.Add(label_13, 0, wx.ALIGN_CENTER, 0) + + label_14 = wx.StaticText(self.panel_1, wx.ID_ANY, "") + grid_sizer_1.Add(label_14, 0, wx.ALIGN_CENTER, 0) + + label_18 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Выберите тип пересечения") + label_18.SetFont(wx.Font(14, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + sizer_2.Add(label_18, 0, wx.ALL, 9) + + grid_sizer_3 = wx.GridSizer(0, 2, 0, 0) + sizer_2.Add(grid_sizer_3, 1, wx.EXPAND, 0) + + self.radio_btn_2 = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Крестооборазный\n") + grid_sizer_3.Add(self.radio_btn_2, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) + + self.radio_btn_3 = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Т-образный") + grid_sizer_3.Add(self.radio_btn_3, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) + + bitmap_4 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("D:\\Programming\\PythonProjects\\odd-perekrestok\\img\\perekr4.jpg", wx.BITMAP_TYPE_ANY), style=wx.BORDER_NONE) + grid_sizer_3.Add(bitmap_4, 0, wx.ALIGN_CENTER, 0) + + bitmap_5 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("D:\\Programming\\PythonProjects\\odd-perekrestok\\img\\perekr-t.jpg", wx.BITMAP_TYPE_ANY), style=wx.BORDER_NONE) + grid_sizer_3.Add(bitmap_5, 0, wx.ALIGN_CENTER, 0) + + label_15 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Необходимо расчитать:") + label_15.SetFont(wx.Font(14, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + sizer_2.Add(label_15, 0, wx.ALL, 0) + + grid_sizer_2 = wx.FlexGridSizer(1, 9, 0, 0) + sizer_2.Add(grid_sizer_2, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.ALL, 0) + + label_16 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части\nГоризонтальной улицы") + grid_sizer_2.Add(label_16, 0, wx.ALIGN_CENTER_VERTICAL | wx.LEFT | wx.RIGHT, 0) + + self.text_ctrl_1 = wx.TextCtrl(self.panel_1, wx.ID_ANY, "") + grid_sizer_2.Add(self.text_ctrl_1, 0, wx.ALIGN_CENTER, 0) + + bitmap_2 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("D:\\Programming\\PythonProjects\\odd-perekrestok\\img\\123.jpg", wx.BITMAP_TYPE_ANY)) + bitmap_2.Hide() + grid_sizer_2.Add(bitmap_2, 0, 0, 0) + + label_17 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части\nВертикальной улицы") + grid_sizer_2.Add(label_17, 0, 0, 0) + + self.text_ctrl_2 = wx.TextCtrl(self.panel_1, wx.ID_ANY, "") + grid_sizer_2.Add(self.text_ctrl_2, 0, wx.ALIGN_CENTER, 0) + + bitmap_3 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("D:\\Programming\\PythonProjects\\odd-perekrestok\\img\\123.jpg", wx.BITMAP_TYPE_ANY)) + grid_sizer_2.Add(bitmap_3, 0, 0, 0) + + self.button_1 = wx.Button(self.panel_1, wx.ID_ANY, "button_1") + sizer_2.Add(self.button_1, 0, wx.ALIGN_RIGHT, 0) + + self.panel_1.SetSizer(sizer_2) + + self.SetSizer(sizer_1) + + self.Layout() + # end wxGlade + +# end of class SeconPageFrame + +class SecondPage(wx.App): + def OnInit(self): + self.frame = SeconPageFrame(None, wx.ID_ANY, "") + self.SetTopWindow(self.frame) + self.frame.Show() + return True + +# end of class SecondPage + +if __name__ == "__main__": + SeconPage = SecondPage(0) + SeconPage.MainLoop() diff --git a/src/second_page.py.bak b/src/second_page.py.bak new file mode 100644 index 0000000..6aba0c0 --- /dev/null +++ b/src/second_page.py.bak @@ -0,0 +1,134 @@ +#!/usr/bin/env python3 +# -*- coding: UTF-8 -*- +# +# generated by wxGlade 1.1.0pre on Sun Jun 6 15:00:40 2021 +# + +import wx + +# begin wxGlade: dependencies +# end wxGlade + +# begin wxGlade: extracode +# end wxGlade + + +class SeconPageFrame(wx.Frame): + def __init__(self, *args, **kwds): + # begin wxGlade: SeconPageFrame.__init__ + kwds["style"] = kwds.get("style", 0) | wx.DEFAULT_FRAME_STYLE + wx.Frame.__init__(self, *args, **kwds) + self.SetSize((800, 780)) + self.SetTitle("frame") + + sizer_1 = wx.BoxSizer(wx.VERTICAL) + + self.panel_1 = wx.Panel(self, wx.ID_ANY) + sizer_1.Add(self.panel_1, 1, wx.EXPAND, 0) + + sizer_2 = wx.StaticBoxSizer(wx.StaticBox(self.panel_1, wx.ID_ANY, "sizer_2"), wx.VERTICAL) + + label_1 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Исходные данные для расчета\n") + label_1.SetFont(wx.Font(18, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + sizer_2.Add(label_1, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.ALL, 0) + + grid_sizer_1 = wx.GridSizer(0, 4, 0, 0) + sizer_2.Add(grid_sizer_1, 1, wx.EXPAND, 0) + + label_7 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория\nГоризональной улицы") + grid_sizer_1.Add(label_7, 0, wx.ALIGN_CENTER | wx.ALL, 10) + + label_8 = wx.StaticText(self.panel_1, wx.ID_ANY, "", style=wx.ALIGN_CENTER_HORIZONTAL) + grid_sizer_1.Add(label_8, 0, wx.ALIGN_CENTER, 0) + + label_9 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Категория \nВертикальной улицы") + grid_sizer_1.Add(label_9, 0, wx.ALIGN_CENTER, 0) + + label_10 = wx.StaticText(self.panel_1, wx.ID_ANY, "") + grid_sizer_1.Add(label_10, 0, wx.ALIGN_CENTER, 0) + + label_11 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос\nГоризонтальной улицы") + grid_sizer_1.Add(label_11, 0, wx.ALIGN_CENTER, 0) + + label_12 = wx.StaticText(self.panel_1, wx.ID_ANY, "", style=wx.ALIGN_CENTER_HORIZONTAL) + grid_sizer_1.Add(label_12, 0, wx.ALIGN_CENTER, 0) + + label_13 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Количество полос \nВертикальной улицы") + grid_sizer_1.Add(label_13, 0, wx.ALIGN_CENTER, 0) + + label_14 = wx.StaticText(self.panel_1, wx.ID_ANY, "") + grid_sizer_1.Add(label_14, 0, wx.ALIGN_CENTER, 0) + + label_18 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Выберите тип пересечения") + label_18.SetFont(wx.Font(14, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + sizer_2.Add(label_18, 0, wx.ALL, 9) + + grid_sizer_3 = wx.GridSizer(0, 2, 0, 0) + sizer_2.Add(grid_sizer_3, 1, wx.EXPAND, 0) + + self.radio_btn_2 = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Крестооборазный\n") + grid_sizer_3.Add(self.radio_btn_2, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) + + self.radio_btn_3 = wx.RadioButton(self.panel_1, wx.ID_ANY, u"Т-образный") + grid_sizer_3.Add(self.radio_btn_3, 0, wx.ALIGN_CENTER_HORIZONTAL, 0) + + bitmap_4 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("D:\\Programming\\PythonProjects\\odd-perekrestok\\img\\perekr4.jpg", wx.BITMAP_TYPE_ANY), style=wx.BORDER_NONE) + grid_sizer_3.Add(bitmap_4, 0, wx.ALIGN_CENTER, 0) + + bitmap_5 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("D:\\Programming\\PythonProjects\\odd-perekrestok\\img\\perekr-t.png", wx.BITMAP_TYPE_ANY), style=wx.BORDER_NONE) + grid_sizer_3.Add(bitmap_5, 0, wx.ALIGN_CENTER, 0) + + label_15 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Необходимо расчитать:") + label_15.SetFont(wx.Font(14, wx.FONTFAMILY_DEFAULT, wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_BOLD, 0, "")) + sizer_2.Add(label_15, 0, wx.ALL, 0) + + grid_sizer_2 = wx.FlexGridSizer(1, 9, 0, 0) + sizer_2.Add(grid_sizer_2, 0, wx.ALIGN_CENTER_HORIZONTAL | wx.ALL, 0) + + label_16 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части\nГоризонтальной улицы") + grid_sizer_2.Add(label_16, 0, wx.ALIGN_CENTER_VERTICAL | wx.LEFT | wx.RIGHT, 0) + + self.text_ctrl_1 = wx.TextCtrl(self.panel_1, wx.ID_ANY, "") + grid_sizer_2.Add(self.text_ctrl_1, 0, wx.ALIGN_CENTER, 0) + + bitmap_2 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("/Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg", wx.BITMAP_TYPE_ANY)) + bitmap_2.Hide() + grid_sizer_2.Add(bitmap_2, 0, 0, 0) + + grid_sizer_2.Add((20, 20), 0, 0, 0) + + label_17 = wx.StaticText(self.panel_1, wx.ID_ANY, u"Ширину проезжей части\nВертикальной улицы") + grid_sizer_2.Add(label_17, 0, 0, 0) + + self.text_ctrl_2 = wx.TextCtrl(self.panel_1, wx.ID_ANY, "") + grid_sizer_2.Add(self.text_ctrl_2, 0, wx.ALIGN_CENTER, 0) + + bitmap_3 = wx.StaticBitmap(self.panel_1, wx.ID_ANY, wx.Bitmap("/Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg", wx.BITMAP_TYPE_ANY)) + grid_sizer_2.Add(bitmap_3, 0, 0, 0) + + grid_sizer_2.Add((20, 20), 0, 0, 0) + + self.button_1 = wx.Button(self.panel_1, wx.ID_ANY, "button_1") + sizer_2.Add(self.button_1, 0, wx.ALIGN_RIGHT, 0) + + self.panel_1.SetSizer(sizer_2) + + self.SetSizer(sizer_1) + + self.Layout() + # end wxGlade + +# end of class SeconPageFrame + +class SecondPage(wx.App): + def OnInit(self): + self.frame = SeconPageFrame(None, wx.ID_ANY, "") + self.SetTopWindow(self.frame) + self.frame.Show() + return True + +# end of class SecondPage + +if __name__ == "__main__": + SeconPage = SecondPage(0) + SeconPage.MainLoop() diff --git a/src/second_page.wxg.bak b/src/second_page.wxg.bak new file mode 100644 index 0000000..b82420f --- /dev/null +++ b/src/second_page.wxg.bak @@ -0,0 +1,172 @@ + + + + + + 658, 331 + frame + + + wxVERTICAL + + + 0 + wxALIGN_CENTER_HORIZONTAL + + + 16 + default + + bold + 0 + + + + + + + + 0 + wxEXPAND + + 0 + 4 + 0 + 0 + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + + 0 + + + 14 + default + + bold + 0 + + + + + + + + 0 + wxEXPAND + + 0 + 3 + 0 + 0 + + + 0 + wxLEFT|wxRIGHT|wxALIGN_CENTER_VERTICAL + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + + 1 + /Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg + + + + + 0 + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + + /Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg + + + + + + + diff --git a/src/second_page1.wxg b/src/second_page1.wxg index 35b7cc5..952086c 100644 --- a/src/second_page1.wxg +++ b/src/second_page1.wxg @@ -1,5 +1,5 @@ - + @@ -152,7 +152,7 @@ wxALIGN_CENTER - D:\Programming\PythonProjects\odd-perekrestok\img\perekr-4.jpg + D:\Programming\PythonProjects\odd-perekrestok\img\perekr4.jpg @@ -161,7 +161,7 @@ wxALIGN_CENTER - D:\Programming\PythonProjects\odd-perekrestok\img\perekr-t.png + D:\Programming\PythonProjects\odd-perekrestok\img\perekr-t.jpg @@ -211,15 +211,7 @@ 0 1 - /Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg - - - - - 0 - - 20 - 20 + D:\Programming\PythonProjects\odd-perekrestok\img\123.jpg @@ -240,15 +232,7 @@ 0 - /Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg - - - - - 0 - - 20 - 20 + D:\Programming\PythonProjects\odd-perekrestok\img\123.jpg diff --git a/src/second_page1.wxg.bak b/src/second_page1.wxg.bak new file mode 100644 index 0000000..35b7cc5 --- /dev/null +++ b/src/second_page1.wxg.bak @@ -0,0 +1,269 @@ + + + + + + 800, 780 + frame + + + wxVERTICAL + + + 0 + wxEXPAND + + + wxVERTICAL + + + + 0 + wxALL|wxALIGN_CENTER_HORIZONTAL + + + 18 + default + + bold + 0 + + + + + + + + 0 + wxEXPAND + + 0 + 4 + 0 + 0 + + + 10 + wxALL|wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + 0 + wxALIGN_CENTER + + + + + + + + 9 + wxALL + + + 14 + default + + bold + 0 + + + + + + + + 0 + wxEXPAND + + 0 + 2 + 0 + 0 + + + 0 + wxALIGN_CENTER_HORIZONTAL + + + + + + + 0 + wxALIGN_CENTER_HORIZONTAL + + + + + + + 0 + wxALIGN_CENTER + + + D:\Programming\PythonProjects\odd-perekrestok\img\perekr-4.jpg + + + + + 0 + wxALIGN_CENTER + + + D:\Programming\PythonProjects\odd-perekrestok\img\perekr-t.png + + + + + + + 0 + wxALL + + + 14 + default + + bold + 0 + + + + + + + + 0 + wxALL|wxALIGN_CENTER_HORIZONTAL + + 1 + 9 + 0 + 0 + + + 0 + wxLEFT|wxRIGHT|wxALIGN_CENTER_VERTICAL + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + + 1 + /Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg + + + + + 0 + + 20 + 20 + + + + + 0 + + + + + + + 0 + wxALIGN_CENTER + + + + + + 0 + + /Users/danamir/PycharmProjects/odd-perekrestok/img/good.jpg + + + + + 0 + + 20 + 20 + + + + + + + 0 + wxALIGN_RIGHT + + + + + + + + + +