본문 바로가기

TKinter20

독학 Python tkinter(GUI) - 09.MessageBox 일반적인 프로그램을 사용하다 보면, 잘못된 입력이나 동작을 했을 때, 경고나 알림을 주는 여러 메세지들을 봤을 것이다. 우리가 작성하는 프로그램도 이런 종류의 메세지를 통해 사용자에게 정보를 제공하거나 오류를 수정하도록 유도할 수 있는데, 오늘은 메세지에 대해 알아보려한다. 1. 살짝 맛보기 - 메세지창을 띄우기 위해서는 tkinter.messagebox 라이브러리가 필요하다. - 메세지 박스의 경우 사용 빈도가 생각보다 높아 alias(약칭/별명) 을 설정해두면 훨씬 편리하다. - 2라인과 같이 라이브러리를 호출한 뒤 지난 시간에 사용한 버튼 코드에 'msb.showinfo ~~ ' 를 추가해주면 프로그램이 시작될 때 다음과 같은 메세지 창이 나타난다. - 사용방법은 msb.showinfo(title,.. 2023. 11. 7.
독학 Python tkinter(GUI) - 08.Button Button은 번역을 하면 더 난해한 느낌이 드는, 메소드나 함수 등을 실행시키는 단추이다. 그래서 설명보다는 원래 자신이 알던 이미지를 떠올리는게 더 정답이라고 생각한다. 예를 들면 해당 버튼을 누르면 뭔가 진행되거나 실행된다는건 다들 겪어 본 일들일 거라 생각한다. 1. Button(버튼)만들기 - 만드는 방법은 Label을 만드는 방법과 크게 다르지 않다. - 대신 위에 언급한 바와 같이 어떤 동작을 실행시킬 수 있는 command를 지정할 수 있다는게 가장 큰 특징이다. 2. 코드 from tkinter import * root = Tk() root.title('To올라운드의 알찬 GUI 강의') root.geometry("200x300") # 가로 X 세로 / 대문자X 하면 실행안됨 body_f.. 2023. 11. 6.
독학 Python tkinter(GUI) - 07.place place는 pack, grid 와 함께 GUI의 위치를 지정하는 방법이다. pack이나 grid의 경우 상대적인 위치들로 배치가 되었다면 place는 정확한 위치 값을 지정할 수 있다는 장점과 pack이나 grid와 함께 혼용해서 사용할 수 있다는 장점이 있다. 1. place 사용 방법 - 사용방법은 간단하다. 해당 요소(위젯).place(x=x 좌표, y= y 좌표) 값을 입력해주면된다. - 기준 값은 늘 그렇듯 왼쪽 상단이 (0, 0)이다. - 지난 grid 포스팅 때 사용한 코드 중 일부만 place로 변경해보겠다. from tkinter import * root = Tk() root.title('To올라운드의 알찬 GUI 강의') root.geometry("400x500") # 가로 X 세로 .. 2023. 11. 5.
독학 Python tkinter(GUI) - 06.grid 1. 요소(위젯) grid로 나타내기. - tkinter GUI는 pack, grid, place 3가지 방식으로 위치를 나타낼 수 있는데, 지난 pack에 관련된 포스팅에 이어 2번째 grid에 대한 포스팅이다. [이전 글 추가] - pack만 사용하거나 grid만 사용해도 무관하나, 상황에 따라 더 편리한 방법이 있다보니 2가지를 다 알고 혼용하는 것도 좋다. - grid가 가지는 가장 큰 장점은 반듯한 사격형에 넣은 것과 같은 규격이다. - 셀 단위 배치라고도 부르는데, column(열)과 row(행)의 번호를 할당해주는 방식이다. from tkinter import * root = Tk() root.title('To올라운드의 알찬 GUI 강의') root.geometry("600x500") # 가.. 2023. 11. 4.
독학 Python tkinter(GUI) - 05.pack 1. 요소(위젯) 표시하기 - 앞에서 Frame이나 Label과 같은 요소(위젯)들을 생성한뒤, pack()을 통해 GUI상에 표시해주는 것을 기억해볼 수 있다. 그런데, 실제 tkinter에서는 pack 뿐만 아니라 grid와 place까지 총 3가지 방법으로 UI를 표시할 수 있다. - 간략한 사용법 설명에 앞서 주의해야할 사항은 하나의 Frame 내에서는 pack과 grid 중 하나의 표기 방법으로 통일해야한다. (place는 혼용 가능) - 예를 들어 지난 시간에 만들었던 주황색 영역의 Frame안에 초록색과 파란색의 Frame을 만든 뒤, 초록색 Frame 내부에 있는 요소들은 pack 을 파란색 Frame 내부에 있는 요소들은 grid 를 이용해 나타낼 수 있다. - 하지만 하나의 Frame .. 2023. 11. 3.
독학 Python tkinter(GUI) - 04.Label 1. Label? - 우리에게는 라벨이라는 발음이 더 익숙하지만, 실제 외국 강의영상을 보면 대부분 레이블이라고 발음한다. - 레이블(Label)은 GUI 상에 일반적으로 나타나는 글들을 표현하는 요소(위젯)이다. - 대부분 제목의 용도로 쓰거나 함께 보이는 그림이나 표를 설명하는 형태의 문장을 입력할 때 사용한다. from tkinter import * root = Tk() root.title('To올라운드의 알찬 GUI 강의') root.geometry("300x800") # 가로 X 세로 / 대문자X 하면 실행안됨 head_frame = Frame(root, relief='solid', bd=2, background='red') head_frame.pack(fill='both', expand=Tru.. 2023. 11. 2.
독학 Python tkinter(GUI) - 03.Frame 1. Frame 어디에 숨어 있었나? - 첫 포스팅에서 각각의 요소들에 대한 명칭을 배우며, Frame을 보지 못했을 것입니다. - 영어 단어 그대로 '틀' 이라는 의미 인데요. - 우리는 이 '틀'을 이용해 각각의 요소(위젯)들을 배치하기도 하고, 틀안에 다시 틀을 넣어서 원하는 위치를 가지도록 할 수 있습니다. - 먼저 처음 보았던 GUI 각 요소들의 설명시에 확인하지 못했던 Frame이 어디있는지 확인해볼까요? - 오른쪽에 보이는 검은색 으로 나뉘어진 영역들이 모두 Frame 영역들입니다. - 실제 프로그램에서는 상황에 따라 실선이나 점선 등으로 나타낼 수도 있고, 안 보이게도 설정 가능합니다. - 해당 영역을 나누는 가장 큰 이유는 필요한 기능끼리 정렬해서 배치하고 관리하기 위함입니다. - 그리고.. 2023. 11. 1.
독학 Python tkinter(GUI) - 02.기본설정 1. tkinter 기본 설정 - tkinter는 파이썬의 GUI를 지원하는 기본 라이브러리 입니다. - 따로 추가할 필요없이 호출만으로 사용할 수 있다는 뜻이죠. from tkinter import * root = Tk() root.mainloop() - 1 라인 : 가장 먼저 tkinter를 import 합니다. 기본 과정에서 배웠듯 [from tkinter import *] 로 라이브러리를 호출할 경우, 코드 내에서 사용되는 tkinter의 메서드들 앞에 [tkinter.] 을 생략하여 사용할 수 있어 편리합니다. - 2 라인: GUI를 지원하는 최상단의 윈도우 이름을 root로 설정하였습니다. - 3 라인: 실행된 GUI 창을 반복 실행하도록 합니다. 해당 코드가 없을 경우 실행된 GUI가 1회 .. 2023. 10. 31.
독학 Python tkinter(GUI) - 01.preview 0. tkinter preview - 첫번째 포스팅인만큼 가볍게 tkinter의 구성 요소를 확인하고 세부적인 포스팅은 나눠서 진행해보겠습니다. - 사실 컴퓨터를 오늘 처음 쓰는 사람이 아니라면, 어떠한 형태라도 GUI를 접해봤기 때문에 GUI는 낯설지 않을 겁니다. - 대신 해당 요소들의 뭐라 부르는지 모르기 때문에 오늘의 포스팅은 명칭을 통일하는 과정이라고 생각하고 가볍게 읽어봐주시면 될 것 같습니다. 1. tkinter 예시 및 명칭 구분 - 낯설지 않으시죠? 프로그램을 사용하다보면 흔히 보게 되는 GUI 구성 요소들입니다. - 이런 각각의 요소들을 위젯이라고 부르기도 합니다. 2. 포스팅 순서 1) Tkinter 기본 설정들 - 타이틀, 해상도 등 2023.10.31 - [Python/GUI(tk.. 2023. 10. 30.
독학 Python tkinter(GUI) - 00.소개 0. tkinter(GUI) 소개 - python에 조금 자신이 붙거나 또는 어느 정도 원하는 결과를 코드로 만들 수 있게되면 꼭 필요한 내용이 있다. - 바로 [배포]인데, 배포를 하기 위해서는 pyinstaller 등을 이용하여 exe로 변환만 진행하면 되지만, 문자와 커맨드창으로 진행하는 CUI 방식은 컴퓨터가 낯선 사람들에게는 부담스러운 프로그램 환경이다. - 그래서 그래픽을 동반한 프로그램으로 전달해줘야 상대방이 편리하게 사용 할 수 있고, 사용자에 의한 오류적인 요소도 줄일 수 있다. - 제목에서 언급한 GUI란 (Graphical User Interface)의 약자인데, 영어 단어가 여러개가 나왔지만 당황할 필요는 없다. 1. GUI?? CUI?? UI(User Interface)?? 1) .. 2023. 10. 29.
반응형