글

라벨이 tkinter인 게시물 표시

[Python] 파이썬의 GUI (Event)

바인드(이벤트) 버튼 누르거나 키를 누르거나 마우스를 눌렀을 때 실행을 도와주는 핸들러 사용하는 방법 - 위젯.bind() 이벤트발생시 Event Object 객체가 생성된다. 클래스 내에 정보를 가지고 잇다.  event 매개변수가 반드시 필요하다.  #tkinter_7.py from tkinter import * from random import * from time import * win = Tk() #마우스를 클릭하면 그 위치를 출력해주는 Event 프로그램 def onClick(event):     print(event.x,"    ",event.y) def dleft(event):     print("더블") def mleft(event):     print("모션") #bind(위젯,함수명) win.bind("<Button-1>",onClick) win.bind("<Double-Button-1>",dleft) win.bind("<B1-Motion>",mleft) #"<Button-1>" 마우스 왼쪽 버튼 #"<Button-2>" 마우스 휠 #"<Button-3>" 마우스 오른쪽 버튼 #드래그 #<B1-Motion> : 마우스 왼쪽 버튼 누른 상태로 움직일 때 #B2 : 휠, B3 : 오른쪽 #더블클릭 #<Double-Button-1> 더블클릭 왼쪽 win.mainloop() #tkinter_8.py from tkinter import * from random import * from time import * def onClick(event):     print('키보드',event.keycode) #키보드를 클릭했을 때 <Key> #char : 키보드를 누른 값을 문자로 반환 ==...

[Python] 파이썬의 GUI (Tkinter, 도형 무작위 그리기)

#tkinter_5.py  #사각형 그리기 from tkinter import * win = Tk() can = Canvas(win,width=400,height=400) #사각형 그림을 가지고 있는 can #create_rectangle(시작하는 x좌표,y좌표,끝x좌표,끝y좌표) can.create_rectangle(50,50,200,200,fill='blue') can.pack() win.mainloop() #tkinter_6.py #사각형 무작위로 그리기 ( random, time 패키지를 임포트하여 사용 ) from tkinter import * from random import * from time import * #choice : 리스트 자료형에서 임의의 값을 반환 #choice([d1,d2,d3,,,]) #randrange(시작,끝-1) #randrange(0,10,2) #0이상 10미만 3의 배수를 반환 #sample() #로또 1~45 중복 X #sample(범위,개수) #sample(range(1,46),6) #자료형을 인자로 전달받아서 임의의 값을 필요한 개수만큼 리스트로 반환 #중복제거 #shuffle() #전달받은 자료형 내용을 임의의 순서대로(랜덤) 전달받는다. 단 리턴값은 없음. ############################################################### # time 패키지를 이용 #sleep() : 프로그램을 지연( 멈춘다 ) win = Tk() can = Canvas(win,width=400,height=400) #사각형 그림을 가지고 있는 can #create_rectangle(시작하는 x좌표,y좌표,끝x좌표,끝y좌표) can.pack() color =['red','blue','yellow','pink','green','orange'] def draw_rect():     x=randint(0...

[Python] 파이썬 GUI (Tkinter)

위젯들은 모두 클래스이기 때문에 원하는 객체를 생성해서 사용하면 된다.  #tkinter_1.py from tkinter import * win = Tk() #윈도우 창을 생성할 수 있도록 도와주는 클래스 win.title('제목없는 윈도우') #윈도우 제목 #geometry("너비*높이+x좌표+y좌표") #좌표는 좌상단기준으로 아래로(y) 오른쪽으로(x) win.geometry("300x300+100+100") #Label() 을 이용하여 값을 추가할 수 있다. label = Label(win,text='파이썬',bg='red',fg='white') #bg: 백그라운드, fg: 폰트 label2 = Label(win,text='box',bg='green',fg='black') label.pack() #화면 배치 관리자 label2.pack() #버튼 만들기 btn1= Button(win,text='첫번째 버튼') btn2= Button(win,text='두번째 버튼') #place(x,y) : 윈도우 창 내에서 x,y좌표 위치를 잡아서 위젯들을 표시해준다. #grid(가로(row), 세로(column)) btn1.place(x=0,y=0) btn2.place(x=100,y=100) #btn1.pack(side=LEFT) #btn2.pack(side=LEFT) #pack() : 윈도우 자체 크기로 압축해서 자동 지정한다. 특별한 지정이 없다면 top에 선언된다. #pack() 은 side()를 통해 배치할 수 있다. #side(LEFT,RIGHT,TOP) #resizeable(상하,좌우) 조정 가능성 False로 주면 변경 불가 #win.resizable(False,False) win.mainloop() #윈도우 창이 종료될 때 까지 윈도우를 실행 시킨다. #tkinter_2.py from tkin...