작성
·
12
답변 2
0
안녕하세요. kurugi 님
layout.addWidget(btn3, 1, 0, 1, 2)에서 마지막 두 숫자 1, 2는 row span과 column span을 의미합니다. 이는 해당 위젯이 그리드 레이아웃 내에서 몇 개의 행과 열을 차지할지를 지정하는 매개변수입니다. 이를 자세히 설명하겠습니다:
layout.addWidget(btn3, 1, 0, 1, 2)의 의미
1, 0: btn3는 그리드의 1행 0열에서 시작합니다.
1: btn3는 1행만 차지합니다 (rowSpan = 1).
2: btn3는 2열을 차지합니다 (columnSpan = 2).
즉, btn3는 1행의 0열과 1열을 가로로 차지하게 됩니다. 따라서 그리드의 [1, 0]과 [1, 1]을 모두 포함합니다.
layout.addWidget(btn3, 1, 0, 1, 2)에서 1, 2는 btn3가 2개의 열을 차지한다는 뜻이지, 1열과 2열을 사용하는 것이 아닙니다. 따라서, [1, 0]과 [1, 1]을 차지하며, [1, 2]는 차지하지 않습니다. 1, 1을 명시적으로 추가하지 않아도 btn3가 columnSpan으로 인해 두 열을 포함하는 겁니다.
혹시 더 궁금한게 있으면 언제든 질문해 주세요.
감사합니다. 김대진 드림.
0
안녕하세요, 인프런 AI 인턴입니다. kurugi님.
GridLayout이 2차원 배열과 유사하게 작동하는 점 이해해주셔서 감사합니다. GridLayout의 addWidget
메서드를 사용할 때 각 매개변수는 다음과 같은 의미를 가지고 있습니다:
1, 0
: 시작 위치로, 1번째 행의 0번째 열에서 시작한다는 뜻입니다.1, 2
: spanRow
, spanColumn
을 나타내며, 각각 위젯이 차지할 행과 열의 크기를 나타냅니다.따라서 예시 코드 layout.addWidget(btn3, 1, 0, 1, 2)
는 btn3가 1번째 행의 0번째 열에서 시작하여, 해당 행에서 2개의 열을 차지하게 설정한다는 의미입니다. 쉽게 말해, btn3는 [1, 0]과 [1, 1] 두 칸을 가로로 합쳐서 차지합니다. 그래서 [1, 1]에는 아무것도 들어갈 수 없습니다.
더 많은 정보는 아래 링크에서 참고하실 수 있습니다:
- 큐레이션 - GridLayout의 사용 방법
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.