티스토리 뷰

목차

    반응형

    간단한 파이썬 gui 프로그래밍 예제입니다. tkinter 활용했으며 결과 화면은 아래와 같습니다.


    처음 실행하면 입력창, 버튼, 라벨이 보입니다.



    간단한 gui 디자인 강좌간단한 gui 디자인 강좌



    파이썬 gui 프로그래밍 예제 설명

    • 입력창 기본 값 : hello python
    • 라밸 기본 값 : empty
    • 버튼 기본 값 : 클릭

    이 상태에서 클릭 버튼을 누르면 입력창의 텍스트 hello python + [button] 이 라벨 값으로 변경됩니다.



    간단한 gui 디자인 강좌간단한 gui 디자인 강좌



    파이썬 gui 창에서 키보드 엔터를 누르면 hello python + [return] 값이 라벨값으로 변경됩니다.



    간단한 gui 디자인 강좌간단한 gui 디자인 강좌



    전체 소스는 아래 첨부 파일 참조하세요.


    Python GUI 프로그래밍 예제


    gui_tkinter.py



    전체 소스는 아래에 있습니다.



    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    import tkinter
     
    class SimpleApp(tkinter.Tk):
     
        def __init__(self, parent):
            tkinter.Tk.__init__(self, parent)
     
            self.parent = parent
            self.initialize()
     
        def initialize(self):
            self.grid()
     
            입력창 (파이썬 gui)
            self.entryValue = tkinter.StringVar()
            self.entry = tkinter.Entry(self, textvariable=self.entryValue)
            self.entry.grid(column=0, row=0, sticky='WE')
            self.entry.bind('<Return>', self.onPressEnter)
     
            # 버튼
            button = tkinter.Button(self, text='클릭',
                                    command=self.onButtonClick)
            button.grid(column=1, row=0)
     
            # 이름표
            self.labelValue = tkinter.StringVar()
            self.label = tkinter.Label(self, fg='white', bg='orange',
                                       textvariable=self.labelValue)
            self.label.grid(column=0, row=1, columnspan=2, sticky='EW')
     
            # 초기값
            self.entryValue.set('hello python')
            self.labelValue.set('empty')
     
            self.entry.focus_set()
            self.entry.select_range(0, tkinter.END)
     
            self.geometry('200x200+500+300')
     
        def onPressEnter(self, event):
            print('enter')
     
            self.labelValue.set(self.entryValue.get() + '[return]')
            self.entryValue.set('')
     
        def onButtonClick(self):
            print('button')
     
            self.labelValue.set(self.entryValue.get() + '[button]')
     
     
    app = SimpleApp(None)
    app.title = '그래픽 유저 인터페이스'
    app.mainloop()
    cs


    15~18번 라인 : 입력창

    18번 라인에서 엔터<Return> 입력에 대한 이벤트를 설정합니다.


    21~23번 라인 : 버튼

    버튼 선언과 함께 Click 이벤트를 설정합니다.


    26~29번 라인 : 라벨 (이름표)

    27~28번 라인에서 색상을 설정하고, 29번 라인에서 행과 열, 크기를 설정합니다.


    32~38번 라인 : 초기화

    파이썬 gui 요소들의 초기 값을 설정합니다. 38번 라인에서 창 크기를 지정합니다.


    40~44번 라인 : 키보드 엔터<Return> 이벤트

    엔터가 입력되면 입력창 텍스트에 [return] 문자열을 더한 결과를 라벨 값으로 설정합니다.


    46~49번 라인 : 버튼 클릭 이벤트

    버튼 클릭하면 입력창 텍스트에 [button] 문자열을 더한 결과를 라벨 값으로 설정합니다.



    관련 글


    파이썬 gui 터틀 그리기 예제, 별 삼각형 사각형 star triangle


    [Qt프로그래밍] Thread를 GUI에서 효율적으로 사용 방법 [Qt5]


    C# 그림판 - GDI 코딩배우기 (닷넷 윈폼 GUI 프로그래밍 강좌)



    ⓒ written by vicddory

    반응형