Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- ubuntu
- Python
- 황토펜션
- HTML
- anaconda tensorflow
- 텐서플로 설치
- LISP
- 지리산 펜션
- 파이썬 GUI
- 지리산 황토 펜션
- 파이썬
- tensorflow 설치
- 아나콘다 텐서플로
- 하늘숲 황토 펜션
- CUDA9.0
- 전용 계곡
- 하늘숲황토펜션
- 인공지능
- cuda
- 파이썬 yield
- 산청 황토 펜션
- 지리산 둘레길
- 출근 전날
- machine learning
- LISP 함수
- 오봉 계곡
- tensorflow
- 계곡 펜션
- 하늘숲펜션
- python yield
Archives
- Today
- Total
YongWook's Notes
<파이썬> TKinter - GUI 만들기 본문
예제 보러가기
Tkinter는 파이썬에 내장되어있는 GUI만들기 패키지이다. 잘 사용하면 기본적인 프로그램 만드는데 잘 써먹을 수 있을 것 같다.
- 기본형식123456789101112131415161718192021222324252627282930313233
import
Tkinter
root
=
Tkinter.Tk()
#TKinter가 좌지우지할 processor를 만듦
root.config(width
=
800
, height
=
600
, bg
=
"gray"
)
# label / entry pair
l1
=
Tkinter.Label(root, text
=
"First Name:"
)
e1
=
Tkinter.Entry(root)
# put in first row
l1.grid(row
=
0
, column
=
0
)
#grid는 입력창의 크기를 알아서 조정해준다.
e1.grid(row
=
0
, column
=
1
)
# label / entry pair
l2
=
Tkinter.Label(root, text
=
"Last Name:"
)
e2
=
Tkinter.Entry(root)
# put in second row
l2.grid(row
=
1
, column
=
0
)
e2.grid(row
=
1
, column
=
1
)
# label / entry /button tripple
l3
=
Tkinter.Label(root, text
=
"Age:"
,bg
=
"light gray"
)
e3
=
Tkinter.Entry(root,bg
=
"dark slate gray"
)
b3
=
Tkinter.Button(root, text
=
"submit"
, bg
=
"slate gray"
)
#button 만들기.
#text와 background color 지정
# put in third row
l3.grid(row
=
2
, column
=
0
)
e3.grid(row
=
2
, column
=
1
)
b3.grid(row
=
3
, column
=
1
)
root.mainloop()
#프로그램의 다른 동작이 진행될 때 까지 기다린다.
- component 위치설정12345678910111213141516171819
import
Tkinter
root
=
Tkinter.Tk()
root.title(u
'두번째 예제'
)
root.config(width
=
400
, height
=
300
, bg
=
"gray"
)
#root의 크기를 지정한다
b1
=
Tkinter.Button(root, text
=
"top-left"
, bg
=
"dark gray"
, relief
=
RIDGE, width
=
10
)
b2
=
Tkinter.Button(root, text
=
"top-right"
, bg
=
"dark gray"
, relief
=
RAISED, width
=
15
)
b3
=
Tkinter.Button(root, text
=
"bottom-left"
)
b4
=
Tkinter.Button(root, text
=
"bottom-right"
)
b5
=
Tkinter.Button(root, text
=
"center"
)
b1.place(relx
=
.
0
,rely
=
0
)
# margin(여백)을 두고 위치된다.
b2.place(relx
=
.
2
,rely
=
.
0
)
# printf에서 %2x 의 쓰임과 유사
b3.place(relx
=
.
0
,rely
=
.
2
)
b4.place(relx
=
.
2
,rely
=
.
2
)
b5.place(relx
=
.
1
,rely
=
.
1
)
root.mainloop()
#프로그램의 다른 동작이 진행될 때 까지 기다린다.
- RadioButton
http://www.tutorialspoint.com/python/tk_radiobutton.htm12345678910111213from
Tkinter
import
*
root
=
Tk()
#option을 다른 파일을 read하는 것으로 지정할 수 있다.
root.option_readfile(
'optionDB'
)
root.title(
'세번째 예제 - radio_button'
)
fruit
=
[(
'bugger'
,
1
), (
'chicken'
,
2
), (
'cola'
,
3
)]
var
=
IntVar()
for
menu, value
in
fruit:
Radiobutton(root, text
=
menu, value
=
value, variable
=
var).pack(anchor
=
W)
var.
set
(
3
)
# value가 3인 controller를 set해준다.
root.mainloop()
- 데이터 콘솔로 보내기1234567891011121314151617181920212223242526272829303132333435363738394041424344
from
Tkinter
import
*
master
=
Tk()
master.geometry(
"300x400+300+300"
)
Label (master, text
=
"name"
).grid(row
=
0
)
Label (master, text
=
"student number"
).grid(row
=
1
)
name
=
Entry(master)
name.insert(
10
,
"name"
)
name.grid(row
=
0
, column
=
1
)
name.focus_set()
studentNumber
=
Entry(master)
studentNumber.insert(
10
,
"20xxxxxxx"
)
studentNumber.grid(row
=
1
, column
=
1
)
affiliation
=
u
"선택되지 않음"
def
sel():
global
affiliation
affiliation
=
var.get()
var
=
StringVar()
var.
set
(
1
)
R1
=
Radiobutton(master, text
=
u
"컴퓨터공학전공"
,variable
=
var, value
=
u
"컴퓨터공학전공"
, command
=
sel)
R2
=
Radiobutton(master, text
=
u
"전기공학전공"
,variable
=
var, value
=
u
"전기공학전공"
, command
=
sel)
R3
=
Radiobutton(master, text
=
u
"타학과(부전공)"
,variable
=
var, value
=
u
"타학과(부전공)"
, command
=
sel)
R1.grid(row
=
2
)
R2.grid(row
=
3
)
R3.grid(row
=
4
)
def
callback():
print
name.get()
print
studentNumber.get()
print
affiliation
Label (master, text
=
u
"전달할 메세지"
).grid(row
=
5
)
msg
=
Entry(master)
msg.grid(row
=
5
, column
=
1
)
mybutton
=
Button(master, text
=
u
"제출"
, width
=
10
, command
=
callback)
mybutton.grid(row
=
6
)
mainloop()
- 기타등등123456789101112
root
=
Tk()
root.geometry(
"600x800+100+100"
)
# root의 GUI창이 생성되는 위치 지정. (크기+x좌표+y좌표)
popup
=
Toplevel(root)
# root위에 다른 창을 띄우고 싶을 때는 Tk()를 한번 더 쓰면 안되고 Toplevel()을 쓴다.
Radiobutton(popup, text
=
"라디오버튼"
, variable
=
self
.var, value
=
i,
indicatoron
=
0
, relief
=
RAISED, command
=
self
.selected).pack(fill
=
X)
# http://www.tutorialspoint.com/python/tk_radiobutton.htm <<- radio버튼 설명.
# indicatoron =0 은 라디오버튼에 있는 동그란 체크박스를 숨겨준다.
# relief는 해당 element 전체의 모양타입을 정해줄 수 있음
- GUI 예제 - 예제 보러가기
'-software > python' 카테고리의 다른 글
<파이썬> Tkinter - GUI 예제 (4) | 2016.05.30 |
---|---|
<파이썬> random과 배열, 생태계 개체수 예측하기 (0) | 2016.05.09 |
<파이썬> 비트 연산자 (bit operation) 및 예제 (0) | 2016.04.21 |
<파이썬> 사전집합 dictionary (4) | 2016.04.16 |
<파이썬> 기초 구문 및 잡다한 특징 (0) | 2016.04.16 |
Comments