지 프레임에서 Tkinter 포함하는 로컬 그리드 시스템의 차이점은 무엇입니까?

0

질문

매우 간단한 질문을 찾을 수 없습니다 대답하에 스택합니다. (만이 오해의 소지가 실: Python3Tkinter:이내에 그리드 Grids? 프레임과 함께는 다른 사이트를 방문하십시오. 는 슬프게도에 대한 답변을 제공하지 않습니다 질문에).

내가 사용하 tkinter Python 려고 하는 프로그램니다. 불행하게도,나는 완전히 이해하지 못하는 그리드 시스템입니다.

미국에서는 각 프레임 포함한다 그것의 자신의 그리드 시스템,가 0,0 좌측 상단의 프레임입니다.

이 코드:

root = Tk()

main_frame = Frame(root, width='1520', height='1080', bg='#a1a1a1').grid(row=0, column=1)
side_frame = Frame(root, width='400', height='1080', bg='#757575').grid(row=0, column=0)

header_label = Label(main_frame, text='Heading', font=('Agency', 48), bg='#a1a1a1', fg='#ffffff').grid(row=0, column=0)

고 기대했기 때문에 레이블을 설정하는(0,0)에서 메인 프레임에는 레이 나타나는 메인 프레임. 그러나 그것은 하지 않았다. 내가 찾는 조금 이상하고 고통스런 일입니다. 아래의 그림이 대신어-헤더 레이블에 나타나는'side_frame'.

잘못된 레이아웃이 사진

수 있는 누군가가 나에게 설명하십시는 방법 그리드 시스템이 작동합니까? 나는 정말 아니었는 데 문제가 될 때까지 나를 추가하는 스크롤바를 main_frame-나는 다음이 심각한 어색함에 포함 tkinter 고 싶을 제대로 그것을 이해합니다.

감사합니다!

layout optimization python tkinter
2021-11-21 20:36:50
1

최고의 응답

1

문제는 당신이 설정 main_frameside_frame 하기 None도록,전달하는 부모에 대한 다른 위젯 만들 것입니다젯 아이의 뿌리요.

는 것이기 때문에서는 파이썬 x=y().z() 의 값을 설정합니다 x 하기 z(). 따라서,당신 main_frame = Frame(...).grid(...)main_frame 결과 .grid(...)grid 항상 반품 None.

해야 합 별도의 창조에서 레이아웃을 위젯,그리고 이것은 하나의 이유는 이렇습니다. 다른 큰 이유는 코드를 읽고 시각화합니다.

main_frame = Frame(root, width='1520', height='1080', bg='#a1a1a1')
side_frame = Frame(root, width='400', height='1080', bg='#757575')

main_frame.grid(row=0, column=1)
side_frame.grid(row=0, column=0)
2021-11-21 21:25:09

감사합니다! 지 않아요 완전히 이해하는 방법에 대한 세부 사항 이 다른 분들이 있지만,당신은 확실히 해결이 내 문제입니다. 이제 다음 문제가 발생하...D
Jordan Regan

다른 언어로

이 페이지는 다른 언어로되어 있습니다

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................