본문 바로가기

반응형

wxPython

파이썬 GUI, 버튼 생성 후 이벤트 등록하기 개요 가장 많이 쓰는 위젯인 버튼(wx.Button)을 생성하고, 눌렀을 때 프로그램이 닫히는 이벤트를 구현해본다. wx.Button 버튼(wx.Button)은 문자열을 포함하고 가장 자주 쓰이는 위젯이다. 버튼은 보통 패널(wx.Panel) 위나 다이얼로그 상자(wx.Dialog)나 혹은 윈도우(wx.Frame) 창 위에도 놓일 수 있다. 변수 선언은 다음과 같이 한다. btn = wx.Button(parent, id=wx.ID_ANY, label="버튼라벨", pos=wx.DefaultPosition, size=wx.DefaultSize, style=0, validator=wx.DefaultValidator, name="") 버튼을 정의할 때 필요한 각각의 인수에 대해 설명하면 아래와 같다. pare.. 더보기
파이썬 GUI, 메뉴바 만들기 wx.Menubar 개요 wxPython을 이용하여 간단한 메뉴바(wx.Menubar)를 구성해보자. 메뉴바 항목들에 마우스 오버(Mouse Over)를 하면 상태표시줄에 해당 메뉴에 대한 설명 문구가 뜨게 한다. wx.Menubar 메뉴바(wx.Menubar)란 프레임 상단에 위치하고 일련의 메뉴들로 구성된 wxPython 위젯이다. 메뉴바 인스턴스(menubar)를 생성 후 wx.Frame.SetMenuBar()를 이용하여 프레임에 셋팅한다. menubar = wx.MenuBar() frame.SetMenuBar(menubar) 그러나 위 코드만으로는 메뉴바가 보이지 않을 것이다. 메뉴바는 각 메뉴(wx.Menu)들이 달릴 수 있는 그릇이고 메뉴가 하나라도 없으면 메뉴바는 GUI에서 보이지 않는다. 메뉴바 인스턴스 생성.. 더보기
파이썬 GUI, wxPython Hello World! 개요 wxPython을 이용하여 Hello World! 가 적힌 윈도우를 띄워보고 GUI 프레임워크가 어떤식으로 동작하는지 이해해보자. wxPython 앱의 구조 wxPython은 크게 두 부분으로 되어있다. wx.App - wxPython GUI 툴킷을 시작하는 부트스트랩. 백그라운드에서 동작하며 사용자에게는 보이지 않는다. wx.Frame - 실제 사용자에게 보이는 부분으로 프로그램 윈도우 창에 해당하는 부분이다. wxPython에서 wxFrame과 Window는 동의어이다. wx.App GUI를 백그라운드에서 관장하는 wx.App 함수는 아래와 같이 app 변수에 할당할 수 있다. 이 코드를 실행하면 실행은 되겠지만 사용자 눈에는 아직 아무것도 보이지 않는다. 변수 할당만 되었기 때문이다. app .. 더보기
파이썬 GUI, 왜 wxPython 인가? 파이썬 GUI, 왜 wxPython인가? 파이썬 GUI 프레임워크(framework)는 파이썬 설치시 기본으로 설치되는 Tkinter 외에도 사용자 직접 설치가 필요한 wxPython, PyQt, PySimpleGUI, Kivy, PySide 등이 있다. 해외 사이트를 보면 최소 10가지 이상의 파이썬 GUI 프레임워크가 있는 것 같다. 이 중에서 나는 PyQt, Tkinter, wxPython을 사용해 보았는데, 개인적으로 초보자 입장에서 배우기 쉽고, 구글에 검색했을 때 학습 자료가 많이 등장하는 wxPython와 Tkinter가 독학하기 쉽고, 최종적으로 안정적인 공식사이트(www.wxpython.org)를 가지고 있고, 문제발생시 트러블슈팅에 용이한 스택오버플로우(www.stackoverflow... 더보기

반응형