inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

[Level 1] Qt를 이용한 Python 프로그래밍: 입문편

중첩된 Layout 예제 구현

self가 있는 거와 없는 버튼

137

TaeJoon Park

작성한 질문수 5

1

안녕하세요.

어느 강의에서는

hBtn1 = QPushButton("One")

어느 강의에서는

self.pbtShowDialog = QPushButton(self)

Button 객체를 선언할 때 self가 있는 거와 없는 것이 있습니다.

어떤 차이가 있는 것이며, 어떨때 self를 붙이나요?

python gui qt qml pyside6

답변 2

0

TaeJoon Park

답변 감사합니다.

0

김대진

안녕하세요. TaeJoon Park 님,

hBtn1 = QPushButton("One")

이 경우, hBtn1지역 변수입니다. 즉, 이 변수를 선언한 함수나 메서드가 끝나면 더 이상 참조할 수 없습니다.

  • 이 버튼은 특정 위젯(부모)에 자동으로 추가되지 않습니다.

  • 부모 위젯을 설정하지 않으면, 이 버튼은 독립적인 위젯이 되며, 따로 layout.addWidget(hBtn1) 같은 코드로 추가해야 합니다.

  • 함수가 종료되면 hBtn1소멸될 가능성이 있습니다.

self.pbtShowDialog = QPushButton(self)

여기서 self는 **현재 클래스의 인스턴스(예: QMainWindow 또는 QWidget)**를 의미합니다.

  • 이 버튼은 self(즉, 부모 위젯)의 자식 위젯이 됩니다.

  • 부모가 삭제되면, 자식 위젯도 자동으로 삭제됩니다.

  • self.pbtShowDialog라는 인스턴스 변수가 되므로, 다른 메서드에서도 접근할 수 있습니다.

self.pbtShowDialog.setText("Click Me")

 

혹시 더 궁금한게 있으면 언제든 질문해 주세요.

감사합니다. 김대진 드림.

 

 

 

 

 

 

 

 

 

 

41강 1분 39초 영상에서 import test_module이 조회 안 돼요.

0

5

1

실습파일이 제대로 올라와 있지 않습니다.

0

6

1

정처기 26-2회. 9번 질문드립니다!

0

21

1

1-11 소수 나열하기 (에라토스테네스의 체)

0

10

0

이론 보면서 질문이 있습니다.

0

24

2

테마 개발의 한계, 업종이 대체 할 수 있을까요?

0

14

2

정보처리기사 실기 26년 2회 SRT 스케줄링 문제 단위 질문

0

34

2

유튜브(정보처리기사 실기 | 26년 2회 기출문제 코드 해설)

0

52

2

262 정처기 실기 C언어코딩

0

24

1

바로 답변을주셔서.... 하나더 ㅎㅎ

0

44

3

QML강의를 더 깊게 듣고 싶은데

1

40

2

강의가 넘 좋아서 3번째 복습을 하고 있는데

1

46

3

QT와 QT Designer에 대한 질문 사항

1

194

2

mutex, incNumber는 global 안붙여도 되는건가요?

1

126

2

Qt Resource를 사용하는 예제 구현 10:15 구간 질의

1

164

2

데코레이터 @Slot을 꼭 써줘야 하는 건가요?

1

172

2

TableModel(QAbstractTableModel) 에서 질문입니다.

1

257

2

선호하는 GUI 개발 방법이 있으신가요

1

334

2

가장 큰 위젯의 너비와 같은 너비를 차지하는 2열 짜리 컬럼

1

266

2

exe 배포 시 .ui 파일 처리하는 권장하는 방법이 있나요?

1

339

1

클래스 __init__(self) 설정에서 이해가 안 되는 부분이 있습니다.

2

330

2

pyqt? pysie6? 차이점이 있을까요?

1

1543

2

자주 사용하는 Layout 살펴보기

1

176

2

강의 pdf파일 올려 주시면 안될까요?

2

252

2