반응형

파이썬 강의 47

파이썬 GUI(wxPython) 6. Sizer(레이아웃) : GridSizer, FlexGridSizer, GridBagSizer

이번 강의는 저번 강의에 이어서 레이아웃 기능 중 하나인 GridSizer, FlexGridSizer, GridBagSizer를 알아보겠습니다. 1. GridSizer Grid는 일반적으로 이차원의 직선이나 곡선으로 이루어진 격자를 뜻합니다. (0, 0) (1, 0) (2, 0) (3, 0) (0, 1) (1, 1) (2, 1) (3, 1) (0, 2) (1, 2) (2, 2) (3, 2) (0., 3 (1, 3) (2, 3) (3, 3) (0, 4) (1, 4) (2, 4) (3, 4) 위와 같은 직선으로 이루어진 격자 공간에 위젯을 배치하는 것을 GridSizer라고 합니다. 위의 경우에는 5 x 4의 GridSizer라고 할 수 있습니다. GridSizer도 이전 시간의 BoxSizer와 비슷하게 ..

파이썬 강의/wx 2021.01.09

파이썬 GUI(wxPython) 5. Sizer(레이아웃) : BoxSizer, StaticBoxSizer

이번 강의는 wxPython에서 레이아웃의 기능인 Sizer, 그중에서 BoxSizer와 StaticBoxSizer에 대해서 알아보겠습니다. 1. BoxSizerBoxSizer는 박스가 차곡차곡 쌓이듯이 네모 박스에 위젯들을 넣어서 정렬한다고 붙여진 이름입니다. 그렇기에 BoxSizer를 이용한 프로그램들은 가지런히 정렬된 모양으로 나타납니다. BoxSizer의 코드는 다음과 같습니다.sizer = wx.BoxSizer(orient)orient는 방향이라는 파라미터입니다. 세로로 쌓을지, 가로로 쌓을지를 결정하는 파라미터로 wx.VERTICAL(세로) | wx.HORIZONAL(가로)의 두 가지가 있습니다. 저는 세로인 wx.VERTICAL을 사용하겠습니다. 이렇게 Sizer를 만들었으면 위젯을 Size..

파이썬 강의/wx 2021.01.05

파이썬 GUI(wxPython) 4. 다이얼로그

이번 강의는 wxPython의 다이얼로그에 대해서 알아보겠습니다. 1. Yes or No 다이얼로그는 위의 예/아니오를 누를수 있는 알림처럼 무언가의 정보를 보여주거나 응답을 주고받는 창 입니다. wxPython에서 다이얼로그는 공통적으로 다음과 같은 코드로 만들어 집니다. MessageDialog(parent, message, caption, stlye, pos) 각각의 파라미터는 다음과 같습니다. parent : 부모 Window창 설정. message : 다이얼로그의 메세지를 설정. caption : 다이얼로그의 제목을 설정. style : 다이얼로그의 style을 설정. pos : 표시될 다이얼로그의 위치를 설정. 적지 않을 경우 디폴트값이 들어가게됨 예시로 버튼을 눌렀을 때, Yes or No ..

파이썬 강의/wx 2021.01.05

파이썬 GUI(wxPython) 3. 메뉴바와 메뉴

이번 강의는 메뉴바와 메뉴입니다. 1. 메뉴바 메뉴바는 메뉴들이 모여있는 장소라고 할 수 있습니다. 메뉴바가 있어야 메뉴들을 넣을 수 있기 때문에 메뉴를 넣으실 분들은 필수적으로 만드셔야 합니다. 메뉴바를 만드는 방법은 다음과 같습니다. menu_bar = wx.MenuBar() 괄호 안에는 파라미터로 style값을 넣어줄 수 있지만, 메뉴를 분리할 때 말고는 쓰지 않습니다. 이제 메뉴바를 만들었으니 실행해 보겠습니다. 분명 메뉴바를 만들었는데 실제로는 메뉴바가 나타나지 않습니다. 이것은 메뉴가 없고, 메뉴바가 등록이 되지 않았기 때문입니다. 2. 메뉴 메뉴는 메뉴바를 구성하는 항목들입니다. 위 파이참 사진에서 메뉴는 File, Edit, View 등이 메뉴라고 할 수 있습니다. 메뉴를 만드는 방법은 메..

파이썬 강의/wx 2021.01.05

파이썬 GUI(wxPython) 2. 버튼과 버튼이벤트

이번 강의는 wx의 위젯 중 하나인 버튼과, 그 버튼의 이벤트 처리에 관한 강의입니다. 1. 버튼 버튼은 거의 모든 프로그램에 존재합니다. 특히 강의의 최종 목표인 계산기에는 숫자를 표시하는 부분을 제외하면 모두 버튼이라고 할 수 있습니다. wx에서 버튼은 매우 간단하게 만들어집니다. self.button = wx.Button(self, id=1, label='버튼') 위 코드는 button이라는 새로운 wx.Button을 만드는 코드입니다. wx.Button도 여러 파라미터를 넣어줄 수 있습니다. parent : 어디에 만들어 지는지를 설정합니다. None이 들어갈 수 없습니다. id : 버튼의 고유코드를 부여합니다. ID_ANY를 넣으면 기본값이 들어갑니다. label : 버튼에 나타나는 글자를 입력..

파이썬 강의/wx 2021.01.04

파이썬 requests 2. text와 content

파이썬 requests 2번째 강의는 text와 content입니다. 0. 기초 설명 여러분들이 사용하고 계신 인터넷은 모두 html(HyperText Mark-up Language)로 되어 있습니다. 보기 좋게 되어있는 네이버의 메인화면도 위처럼 수천 줄의 html 코드로 작성되어 있습니다. 크롬이나 IE같은 인터넷 브라우저들은 HTTP통신을 통해 이러한 html정보들을 서버로부터 수신받고, html 정보에 따라서 서버가 의도한 모양대로 나타내 주는 것입니다. 이것을 requests 모듈에서도 사용이 가능합니다. requests에서는 text와 content라는 명령어가 존재합니다. 이 둘 모두 서버로부터 수신한 내용을 표시하는 코드입니다. text는 수신한 byte단위의 데이터를 자동으로 decode..

파이썬 GUI(wxPython) 1. 기초(Frame과 실행)

이번 강의는 wxPython의 기초인 프레임과 실행방법을 알려드리려고 합니다. 1. frame frame은 프로그램의 기본적인 틀이라고 할 수 있습니다. 프레임을 만들어준 후, 그 위에 여러 가지 기능을 넣는 형식입니다. 위 비트토렌트 사진에서도 가장 처음 보이는 화면을 프레임이라고 할 수 있습니다. wxPython에서 frame은 class로 선언됩니다. class MainFrame(wx.Frame): class의 이름은 자신이 원하는 이름으로 하셔도 상관없습니다. 하지만 괄호안에 이것이 무슨 종류인지를 선언해야 합니다. frame에 관한 class이기에 wx.Frame을 넣어 frame임을 선언해줍니다. def __init__(self, parent, id, title): 그 이후 __init__를 ..

파이썬 강의/wx 2021.01.03

파이썬 GUI(wxPython) 0. 설치

이번 시간부터 파이썬에서 GUI 프로그래밍을 하는 방법의 일환으로 wxPython을 알려드리도록 하겠습니다. 0. 파이썬 GUI 파이썬에서는 사실 'tkinter'라고 하는 GUI 프로그래밍 모듈을 기본적으로 지원하고 있습니다. 하지만 기본 모듈답게 많은 기능을 지원하지 않고, 예쁘게 만들기도 쉽지 않습니다. 그래서 여러 프로그래머들이 다른 프로그래밍 언어에 있는 모듈들을 파이썬에 적용하기 위해 노력했습니다. 그 결과 탄생한것이 PyQt와 wxPython입니다. 이 둘모두 원래는 C++에서 사용되는 툴킷이나, 파이썬에서 사용하도록 만들어진 모듈입니다. 1. wxPython wxPython은 wxWidgets의 파이썬 버전입니다. 좀더 대중적인 Qt보다는 사용되는 프로그램이 적지만, 현역으로 사용되는 코드..

파이썬 강의/wx 2021.01.02

파이썬 openCV 26. 주파수 : 푸리에 변환을 이용한 저주파 필터(LPF) / 고주파 필터(HPF)

파이썬 openCV 26번째 강의는 푸리에 변환을 이용한 저주파 필터(LPF) / 고주파 필터(HPF)입니다. 0. LPF(Low Pass Filter)/HPF(High Pass Filter)? 원래 HPF와 LPF는 전기회로에서 사용하는 용어입니다. 전기신호는 0과 1로 이루어진 신호입니다. 0이면 전기가 흐르지 않고, 1이면 전기가 흐르는 방식으로 모든 전자기기가 작동합니다. 이러한 0과 1을 얼마나 빠르게 켜고 끄는지를 주파수로 표현할 수 있습니다. 하지만 전자기기라고 하더라도 100% 정확한 동작만을 하지는 않습니다. 엄청나게 빠르게 동작하는 전기신호의 특성상 채터링이라고 하는 불규칙적인 진동이 발생하게 됩니다. 또한 모든 전기신호가 한순간 생겼다가 한순간 사라지는것이 아니고, 서서히 사라집니다...

파이썬 openCV 25. 주파수 : 푸리에 변환(Fourier transform)

파이썬 openCV 25번째 강의는 푸리에 변환(Fourier transform)입니다. 이번 강의부터 영상을 주파수 단위로 조작하는 방법을 알려드릴 예정입니다.0. 푸리에 변환(Fourier transform)?여태까지 그래 왔듯이 처음 보는 단어는 항상 수학과 관련이 있습니다. 푸리에 변환은 적분을 이용한 공식으로 어떠한 함수를 주파수로 변환하는 공식입니다. 사실상 푸리에 변환을 강의하기 위해서는 전문적인 교수가 시간을 들여서 강의해야 하므로, 푸리에 변환은 무언가를 주파수로 변환하는 공식이라고만 알아 두시고, 자세한 내용은 아래 위키백과를 참조하시기 바랍니다.ko.wikipedia.org/wiki/%ED%91%B8%EB%A6%AC%EC%97%90_%EB%B3%80%ED%99%98푸리에 변환 - 위키..

반응형