데스크톱 및 일부 모바일 플랫폼에서 작동해야하는 응용 프로그램을 만들고 있습니다.라디오 버튼을 끌면 작업이 수행되지만 체크가 설정되지 않습니다.
다음 예에서는 해제 신호의 세로/가로 단추를 만들어 그룹에 슬롯에 연결합니다.
가로 버튼이 선택되어 가정 :
m_landscapeRadio = new QRadioButton(QObject::tr("Landscape "));
m_portraitRadio = new QRadioButton(QObject::tr("Portrait "));
m_orientationGroup.addButton(m_landscapeRadio, 0);
m_orientationGroup.addButton(m_portraitRadio, 1);
m_orientationGroup.setExclusive(true);
m_landscapeRadio->setChecked(true);
connect(&m_orientationGroup, SIGNAL(buttonReleased(int)), this, SLOT(orientationSlot(int)));
그러나
나는 이상한 상황을 발견했다. 세로 라디오 단추를 누른 상태에서 끌어서 놓으면 슬롯 동작이 수행됩니다 (세로 옵션의 경우). 그러나 세로 단추는 선택되지 않습니다.조치를 수행하지 않겠습니다. 지금은
... orientationSlot
에서
내가 인수를 테스트하고 정말 스스로 그렇게 알고 단추를 예상했지만 ... 체크 값을 자신을 설정합니다.
하지만 사용자가 버튼을 누르고 마음을 바꾸면 버튼에서 드래그하여 작업을 수행 할 필요가 없다고 생각합니다.
코드를 통해 버튼을 설정할 수 있으므로 토글() 신호는 사용하지 마십시오. – Thalia
버튼 그룹 예제를 추가했습니다. 어떻게 든 누르면 개별 버튼을 인식해야합니다. 어쩌면 text() 메서드를 사용하고있을 수도 있습니다. – AlexanderVX
고마워요. 방금 알아 낸 것입니다. 그룹에서 보낸 값을 버튼과 비교하고 실제로 확인했는지 확인할 수 있습니다. 그렇지 않으면 나는 그 행동을 버릴 것이다. 버튼이 많은 버튼 그룹에서는보기 흉합니다. – Thalia