본문 바로가기
IT/파이썬

파이썬 pyside2 layout에 버튼, 라벨 위젯 추가시에 쓰는 함수

 

파이썬 pyside2 layout에 버튼, 라벨 위젯 추가시에 쓰는 함수

보통은 그냥 addWidget 을 써버리는데,

 

이게 추가하는 순서대로 놓아지니깐, 나중에 뒤에 추가하는 것을 앞으로 정렬하고 싶을때 또 인덱스를 찾아서 지우고 삽입하는 과정을 해야 하는 것으로 레퍼런스가 많이 되어 있다.

 

그냥 런타임에 바뀌는 것이 아니라면, 원하는 순서대로 자기가 넣을 수 있도로고 addWidget 대신에 insertWidget 함수를 사용하면 편리하다. 아래처럼 말이다.

 

# 원래코드

# self.ui.horizontalLayout_5.addWidget(self.ui.btn_search)

# index 정보를 넣을 수 있는 insertWidget 사용한 코드

self.ui.horizontalLayout_5.insertWidget(0 , self.ui.btn_search);

 

참고용으로 드래그 앤 드랍 기능으로 위젯 순서를 바꿀때 지우고 삭제하는 질문에 대한 해답이 있는 페이지를 참고하세요.

stackoverflow.com/questions/22010835/how-to-programmatically-change-the-order-of-widgets-in-a-layout/22012253

 

How to programmatically change the order of widgets in a layout?

I do have a QVBoxLayout that contains some custom widgets, which themselves mainly consist of a label and two buttons. You can almost speak of some kind of selfmade table in a way. I know that ther...

stackoverflow.com

 

BJ.

책이 잘 정렬된 대한민국

BERK OZDEMIR 님의 사진, 출처: Pexels