Qt를 사용하여 GUI를 만드는 것은 이번이 처음입니다. 많은 그룹 상자가있는 응용 프로그램에서는 모두 "플랫"속성을 사용하도록 설정하고 싶습니다. 같은 유형의 모든 위젯의 기본값을 변경하는 방법이 있습니까?Qt 위젯의 기본 속성을 설정할 수 있습니까?
QGroupBox
위젯을 기반으로 새로운 클래스를 만들면 똑같은 것을 달성 할 수 있습니다.하지만 실제로 가능한 최소한의 코딩만으로 목표를 달성하는 것이 목표입니다.
Qt를 사용하여 GUI를 만드는 것은 이번이 처음입니다. 많은 그룹 상자가있는 응용 프로그램에서는 모두 "플랫"속성을 사용하도록 설정하고 싶습니다. 같은 유형의 모든 위젯의 기본값을 변경하는 방법이 있습니까?Qt 위젯의 기본 속성을 설정할 수 있습니까?
QGroupBox
위젯을 기반으로 새로운 클래스를 만들면 똑같은 것을 달성 할 수 있습니다.하지만 실제로 가능한 최소한의 코딩만으로 목표를 달성하는 것이 목표입니다.
C++ 코드가 이어집니다. 파이썬에서 포트로 바로 향해야합니다.
위젯의 UI를 설정 한 후 다음을 수행하십시오.
QList<QGroupBox *> groupboxes = this->findChildren<QGroupBox *>();
for (int i=0; i<groupboxes.count(); i++)
groupboxes[i]->setFlat(true);
이것이 내가 원하는 것 같습니다! 하지만 C++에 익숙하지 않아서 번역하기가 힘듭니다. 파이썬 번역본 (나 자신 포함)이 있으면 누군가 대답을 수락합니다. – PhilMacKay
발견! 파이썬 코드는'list = self.findChildren (QtGui.QGroupBox); 목록에있는 항목 : item.setFlat (True)' – PhilMacKay
Qt 디자이너에서 속성을 설정할 수 있습니다. 이게 너가 찾고있는거야? – sashoalm
Qt Designer에서 속성을 설정할 수 있지만 여전히 각 위젯의 값은 변경되지만 모든 기존 위젯에 대한 코드 줄이 생성됩니다. 모든 위젯의 기본값을 덮어 쓰는 한 줄의 코드를 선호합니다 ... – PhilMacKay
그런 다음 QGroupBox를 서브 클래스 화해야합니다. 그것을 피할 방법이 없습니다. 즉, 값을 변경해야합니다. @ pnezis의 코드는 실제로 "기본"값을 변경하지 않더라도 올바르게 수행됩니다. – sashoalm