반응형
대다수의 응용프로그램들은 상단에 Text로 된 메뉴를 가지고 있다.
그 텍스트를 클릭하면 아래쪽으로 메뉴가 나오게 되고 그것을 선택하여 특정한 기능을 동작시킨다.
이러한 메뉴를 만들기 위해서는 MenuBar()를 사용한다.
import os
import wx
# wx 모듈을 로드한다.
app = wx.App()
# 어플리케이션 개체를 생성한다.
frame = wx.Frame(None, -1, 'wxpython 기본이 되는 창입니다.')
# Frame 개체 생성
StatusBar = frame.CreateStatusBar()
StatusBar.SetStatusText('현재 상태를 보여주는 하단 바입니다.')
# 창 아래 생태바를 출력한다.
MenuBar = wx.MenuBar()
menu = wx.Menu()
menu.Append(wx.ID_EXIT, 'E&xit\tAlt-X', '프로그램 종료')
MenuBar.Append(menu, '&파일')
frame.SetMenuBar(MenuBar)
frame.Show()
# Frame 개체를 화면에 나타냄
frame.Centre()
#실행 화면을 가운데로 고정한다.
app.MainLoop()
# 메인 루프 생성
MenuBar = wx.MenuBar()
메뉴바 객체를 생성한다.
menu = wx.Menu()
메뉴바에 추가하기 위한 메뉴 객체를 생성한다.
menu.Append(wx.ID_EXIT, ‘E&xit\tAlt-X’, ‘프로그램 종료’)
메뉴 객체에 메뉴를 추가한다.
첫번째는 식별자이고, 두번째는 메뉴에 표시되는 텍스트 문구, 3번째는 하단 상태바에 표시되는 문구이다.
MenuBar.Append(menu, ‘&파일’)
메뉴바에 위에서 생성된 menu를 추가한다.
frame.SetMenuBar(Menubar)
창에 메뉴바를 생성한다.
메뉴를 2개로 늘리고자 한다면 다음과 같이 하면 된다.
# 창 아래 상태바를 출력한다. ~ frame.Show() 사이에 있는 것을 다음과 같이 교체한다.
MenuBar = wx.MenuBar()
menu = wx.Menu()
menu.Append(wx.ID_EXIT, 'E&xit\tAlt-X', '프로그램 종료')
MenuBar.Append(menu, '&파일')
menu1 = wx.Menu()
menu1.Append(200, 'Test', '임시메뉴')
menu1.Append(201, '한국전력', '국민들이 봉인가?')
menu1.Append(202, '우리나라', '기업들은 살기좋고 국민들은 죽겠다.')
MenuBar.Append(menu1, '&편집')
frame.SetMenuBar(MenuBar)
처음 코드에서 늘어난 점은 Menu 객체를 하나더 생성하여 MenuBar에 추가한 것이다.
이런 식으로 메뉴를 더 생성할 수 있다.
교체를 하고 실행하면 메뉴바에 ‘파일’ 메뉴만 있던 것이 ‘편집’도 추가되어 두개가 된 화면을 확인할 수 있다.
반응형
'Programming' 카테고리의 다른 글
파이썬 모듈(pythone module) - platform (0) | 2013.08.13 |
---|---|
wxpython - 기본창 생성 (0) | 2013.08.13 |
wxPython은 무엇인가? (0) | 2013.08.12 |