2016-07-21 2 views
0

tkinter에서 PyQt setGeometry()의 등가 함수는 무엇입니까? 아니면 어떤 기능이 작동합니까? 조금은 검색했지만 찾지 못했습니다. 모든 예제는 tkinter가 특정 위젯에서 작동하는 것처럼 보이고 우리는 단지 너비를 설정할 수 있습니다. tkinter에서 Qt.setGeometry()를 균등

EDIT

:

setGeometry() 두 가지를 수행합니다. 화면에서 창을 찾고 크기를 설정합니다. 처음 두 매개 변수는 xy 창의 위치입니다. 세 번째는 너비이고 네 번째는 창 높이가 입니다.

+0

'root.geometry()'가 작동하지 않습니까? –

+0

@ParvizKarimli 켜기 레이블, 버튼 등. 작동하지 않습니다. – GLHF

+0

귀하가 귀하의 의견에서 언급 한 것과 같은 다른 위젯의 경우, Tkinter에는 그런 것이 없습니다. 그러나'width'와'height' 옵션은 완벽하게 작동합니다. –

답변

1

tkinter에서 가장 가까운 것은 아마도 place 지오메트리 관리자입니다. 그것으로 x, y 좌표 (절대 또는 상대)와 폭 및 높이 속성 (절대 또는 상대)을 설정할 수 있습니다. 예를 들어

는 100,100에서 당신은 같은 것을 할 것 폭과 높이를 부모의 50 %로 레이블을 배치 :

import tkinter as tk 
root = tk.Tk() 
label = tk.Label(root, text="Hello, world") 
label.place(x=100, y=100, relwidth=.5, relheight=.5) 
root.mainloop() 

그러나, 장소는 매우 드물게 올바른 선택입니다. Tkinter는 위젯에 적합한 크기를 선택하고 배치하는 것에 매우 영리합니다. 해결하고자하는 실제 문제를 알지 못하면 좋은 권장 사항을 제시하기가 어렵지만 거의 확실하게 pack 또는 grid이 더 잘 작동합니다.

+0

꽤 멋진 것들, @ BryanOakley! –

0

또한 grid 형상 관리자 @ BryanOakley의 대답에 비슷한 작업을 수행 할 수 있습니다

from tkinter import * 
root = Tk() 

label = Label(root, bg='cyan') 
label.grid(ipadx=100, ipady=50, padx=50, pady=50) 

UPDATE :이 답변이 도움이되지 않습니다 생각하는 이유하시기 바랍니다 피드백을.

+0

이것은 질문에 대해 묻지 않습니다. 이것은 위젯의 x/y 좌표를 설정하지 않고 단순히 패딩을 추가합니다. 또한 위젯의 너비와 높이를 변경하지 않습니다. –