2013-05-15 5 views
2

QWizard가 있고 마법사 페이지가 표시 될 때마다 특정 작업을 수행해야합니다. 현재 validateCurrentPage 함수에서이 작업을 수행하고 있지만 뒤로 단추가 아닌 다음 단추를 눌렀을 때만 호출된다는 것을 알고 있습니다.QWizard에서 뒤로 버튼을 감지하는 방법은 무엇입니까?

나는 을 currentIdChanged 시도하고 신호를 customButtonClicked 그러나이 중 하나라고하지 않습니다.

뒤로 버튼을 누른 후 표시되는 마법사 페이지에 어떻게 응답 할 수 있습니까? 나는 ... 단순한 뭔가 빠진

감사해야합니다, 앨런

편집 : cmannett85

QAbstractButton *backButton = button(QWizard::BackButton); 
connect(backButton, SIGNAL(clicked()), this, SLOT(backClicked)); 

전체 오류의 요청에 따라 추가 된 코드와 컴파일러 오류는 다음과 같습니다

오류 1 오류 C2664 : 'bool QObject :: connect (const QObject *, const char *, const QObject *, const char *, Qt :: ConnectionType)': 변환 할 수 없습니다. t 매개 변수 1을 'QAbstractButton *'에서 'const QObject *'로 변경하십시오.

+1

이 오류는 정말 이해가되지 않습니다 "사용법 #include ". – darron

+0

감사. 그것은 실제로 오류의 원인이었습니다 ... 미안, 나는 그것을 직접 발견하지 못했습니다. –

답변

2

QAbstractButton *QWizard::button (WizardButton which)으로 뒤로 단추를 가져오고 슬롯에 연결하십시오.

예 : 추가 깜빡하지 않는 한

QAbstractButton *backButton = wizard->button(QWizard::BackButton); 
connect(backButton, SIGNAL(clicked()), this, SLOT(backClicked())); 
+0

감사. 나는 이미 이것을 시도했지만 오류가 발생했습니다 "매개 변수 1을 'QAbstractButton *'에서 'const QObject *'로 변환 할 수 없습니다. 내가 ui를 통해 뒤로 버튼으로 갈 수 있다면 ... 그러면 작동 할 것입니다. –

+0

@AlanSpark'QObject'에서 파생 된'QAbstractButton' 파일로 거기에 뭔가가 있습니다. 당신이 사용했던 코드와 전체 컴파일러 오류를 질문에 추가 할 수 있습니까? – cmannett85

+0

이것이해야 할 일보다 조금 더 복잡해 보일 지 모르지만, 이것이 일을 할 것처럼 보입니다. 나는 그것을 위해 지금 정착 할 것이다! 당신의 도움을 주셔서 감사합니다. –

관련 문제