HOW-TO: Программа на Python, Часть 6 Сравнение версий

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
fullcircle:32:python_ч_6 [2011/02/20 16:25]
fullcircle:32:python_ч_6 [2013/10/09 10:33] (текущий)
[FrameSecond code:] удаление лишнего кода
Строка 38: Строка 38:
 {{ :​fullcircle:​32:​screenshot_003.png?​350 }} {{ :​fullcircle:​32:​screenshot_003.png?​350 }}
  
-Теперь настала пора разобраться со второй формой. Откройте «FrameSecond» в режиме дизайнера. Задайте название «FrameSecond» и заголовок «Second Frame». Задайте центровку «wx.BOTH». Добавьте кнопку и выровняйте её в нижней части окна. Задайте название «btnFSExit» и заголовок «Exit». Создайте событие для кнопки. Добавьте элемент управления «wx.StaticText» в верхней части окна ближе к середине. Назовите его «stHiThere»,​ задайте надпись «Hi there...I'​m the second form!», начертание «Sans», размер 14 пт и плотность «wxBOLD». Теперь сбросьте положение,​ чтобы в форме кнопка была выровнена справа и слева. Это можно сделать,​ сняв галочку с атрибута «Position»,​ и изменять положение «X» для сдвига кнопки вправо и влево, и положение «Y» для сдвига кнопки вверх и вниз до тех пор, пока результат не удовлетворит вас. Запишите изменения и сохраните их.+Теперь настала пора разобраться со второй формой. Откройте «FrameSecond» в режиме дизайнера. Задайте название «FrameSecond» и заголовок «Second Frame». Задайте центровку «wx.BOTH». Добавьте кнопку и выровняйте её в нижней части окна. Задайте название «btnFSExit» и заголовок «Exit». Создайте событие для кнопки. Добавьте элемент управления «wx.StaticText» в верхней части окна ближе к середине. Назовите его «stHiThere»,​ задайте надпись «Hi there...I'​m the second form!», начертание «Sans», размер 14 пт и плотность «wxBOLD»(Props->​Font). Теперь сбросьте положение,​ чтобы в форме кнопка была выровнена справа и слева. Это можно сделать,​ сняв галочку с атрибута «Position»,​ и изменять положение «X» для сдвига кнопки вправо и влево, и положение «Y» для сдвига кнопки вверх и вниз до тех пор, пока результат не удовлетворит вас. Запишите изменения и сохраните их.
  
 После того как мы создали формы, мы напишем код, который «склеит» их все. После того как мы создали формы, мы напишем код, который «склеит» их все.
Строка 106: Строка 106:
 if __name__ == '​__main__':​ if __name__ == '​__main__':​
     main()</​code>​     main()</​code>​
- 
-FrameMain code: 
- 
-#​Boa:​Frame:​FrameMain 
- 
-import wx 
-import FrameSecond 
- 
-def create(parent):​ 
-    return FrameMain(parent) 
- 
-[wxID_FRAMEMAIN,​ wxID_FRAMEMAINBTNEXIT,​ wxID_FRAMEMAINBTNSHOWNEW, ​ 
- ​wxID_FRAMEMAINPANEL1, ​ 
-] = [wx.NewId() for _init_ctrls in range(4)] 
- 
-class FrameMain(wx.Frame):​ 
-    def _init_ctrls(self,​ prnt): 
-        # generated method, don't edit 
-        wx.Frame.__init__(self,​ id=wxID_FRAMEMAIN,​ name=u'​FrameMain',​ 
-              parent=prnt,​ pos=wx.Point(846,​ 177), size=wx.Size(400,​ 340), 
-              style=wx.DEFAULT_FRAME_STYLE,​ title=u'​Main Frame'​) 
-        self.SetClientSize(wx.Size(400,​ 340)) 
-        self.Center(wx.BOTH) 
- 
-        self.panel1 = wx.Panel(id=wxID_FRAMEMAINPANEL1,​ name='​panel1',​ 
-              parent=self,​ pos=wx.Point(0,​ 0), size=wx.Size(400,​ 340), 
-              style=wx.TAB_TRAVERSAL) 
- 
-        self.btnShowNew = wx.Button(id=wxID_FRAMEMAINBTNSHOWNEW,​ 
-              label=u'​Show the other frame',​ name=u'​btnShowNew',​ 
-              parent=self.panel1,​ pos=wx.Point(120,​ 103), size=wx.Size(168,​ 29), 
-              style=0) 
-        self.btnShowNew.SetBackgroundColour(wx.Colour(25,​ 175, 23)) 
-        self.btnShowNew.Bind(wx.EVT_BUTTON,​ self.OnBtnShowNewButton,​ 
-              id=wxID_FRAMEMAINBTNSHOWNEW) 
-FrameMain Code (cont.): 
-        self.btnExit = wx.Button(id=wxID_FRAMEMAINBTNEXIT,​ label=u'​Exit',​ 
-              name=u'​btnExit',​ parent=self.panel1,​ pos=wx.Point(162,​ 191), 
-              size=wx.Size(85,​ 29), style=0) 
-        self.btnExit.SetBackgroundColour(wx.Colour(225,​ 218, 91)) 
-        self.btnExit.Bind(wx.EVT_BUTTON,​ self.OnBtnExitButton,​ 
-              id=wxID_FRAMEMAINBTNEXIT) 
- 
-    def __init__(self,​ parent): 
-        self._init_ctrls(parent) 
-        self.Fs = FrameSecond.FrameSecond(self) 
- 
-    def OnBtnShowNewButton(self,​ event): 
-        #​event.Skip() 
-        self.Fs.Show() 
-        self.Hide() 
- 
-    def OnBtnExitButton(self,​ event): 
-        #​event.Skip() 
-        self.Close() 
- 
-====FrameSecond code:==== 
- 
-<​code>#​Boa:​Frame:​FrameSecond 
- 
-import wx 
- 
-def create(parent):​ 
-    return FrameSecond(parent) 
- 
-[wxID_FRAMESECOND,​ wxID_FRAMESECONDBTNFSEXIT,​ wxID_FRAMESECONDPANEL1, ​ 
- ​wxID_FRAMESECONDSTATICTEXT1, ​ 
-] = [wx.NewId() for _init_ctrls in range(4)] 
- 
-class FrameSecond(wx.Frame):​ 
-    def _init_ctrls(self,​ prnt): 
-        # generated method, don't edit 
-        wx.Frame.__init__(self,​ id=wxID_FRAMESECOND,​ name=u'​FrameSecond',​ 
-              parent=prnt,​ pos=wx.Point(849,​ 457), size=wx.Size(419,​ 236), 
-              style=wx.DEFAULT_FRAME_STYLE,​ title=u'​Second Frame'​) 
-        self.SetClientSize(wx.Size(419,​ 236)) 
-        self.Center(wx.BOTH) 
-        self.SetBackgroundStyle(wx.BG_STYLE_COLOUR) 
- 
-        self.panel1 = wx.Panel(id=wxID_FRAMESECONDPANEL1,​ name='​panel1',​ 
-              parent=self,​ pos=wx.Point(0,​ 0), size=wx.Size(419,​ 236), 
-              style=wx.TAB_TRAVERSAL) 
- 
-        self.btnFSExit = wx.Button(id=wxID_FRAMESECONDBTNFSEXIT,​ label=u'​Exit',​ 
-              name=u'​btnFSExit',​ parent=self.panel1,​ pos=wx.Point(174,​ 180), 
-              size=wx.Size(85,​ 29), style=0) 
-        self.btnFSExit.Bind(wx.EVT_BUTTON,​ self.OnBtnFSExitButton,​ 
-              id=wxID_FRAMESECONDBTNFSEXIT) 
- 
-        self.staticText1 = wx.StaticText(id=wxID_FRAMESECONDSTATICTEXT1,​ 
-              label=u"​Hi there...I'​m the second form!",​ name='​staticText1',​ 
-              parent=self.panel1,​ pos=wx.Point(45,​ 49), size=wx.Size(336,​ 23), 
-              style=0) 
-        self.staticText1.SetFont(wx.Font(14,​ wx.SWISS, wx.NORMAL, wx.BOLD, 
-              False, u'​Sans'​)) 
- 
-    def __init__(self,​ parent): 
-        self._init_ctrls(parent) 
-        self.parent = parent 
- 
-    def OnBtnFSExitButton(self,​ event): 
-        #​event.Skip() 
-        self.parent.Show() 
-        self.Hide()</​code>​ 
  
 ====FrameMain code:==== ====FrameMain code:====