QSpinbox와 QSlider를 연결합니다.
QSpinbox의 범위는 -10.0 ~ 10.0이며 QSlider의 범위는 -100 ~ 100입니다.
따라서 QSlider의 값을 10으로 나눈 값은 QSpinbox에 연결되며 그 반대의 경우도 마찬가지입니다.
"valueChanged()"신호를 서로 사용합니다.
QSpinbox에 "3.5"를 입력하고 싶습니다.이 경우 "3"을 입력하면 QSpinbox의 "valueChanged"가 QSlider의 값을 변경하고 QSlider가 다시 작동합니다. 따라서 QSpinbox는 포커스를 잃습니다.
한 번에 "3.5"를 입력 할 수 없습니다.
"valueChanged()"SIGNAL이 너무 부단하게 작동합니다.
어떻게이 문제를 해결할 수 있습니까?PyQt4 : QSpinbox와 QSlider를 동기화합니다.
1
A
답변
3
valueChanged()
신호는 실제로 변경 될 때 적극적으로 발사됩니다. 편집이 끝나면 신호가 울리도록하려면 editingFinished
이라는 신호가 있습니다. http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qabstractspinbox.html#editingFinished
슈퍼 클래스 QAbstractSpinBox의 멤버이므로 간과 할 수 있습니다. 위젯이 포커스를 잃거나 사용자가 엔터를 치면이 신호가 발생합니다. 그것이 원하는 동작이 아니라면, 남은 유일한 옵션은 QTimer를 사용하여 짧은 지연 시간을 사용하여 매번 valueChanged
이 다시 시작되고 사용자가 충분히 오래 기다리면 실제로 시간 제한이 슬라이더를 업데이트합니다.
int를 위해 설계된 QSpinBox에서 정수가 아닌 값을 사용하려고합니다. 유동 정밀도를 위해 설계된 QDoubleSpinBox를 사용해 볼 수도 있습니다. valueChange()
은 십진수를 예상 할 때보 다 약간 더 행동 할 수 있습니다. 비록 제가 테스트하지 않았기 때문에 추측을하고 있지만 : http://www.riverbankcomputing.co.uk/static/Docs/PyQt4/html/qdoublespinbox.html
관련 문제
- 1. Qt C++ QSlider를 QWebView의 setTextSizeMultiplier에 연결
- 2. silverlight은 데이터베이스와 isolatedstorage를 동기화합니다.
- 3. 원격 서버에서 파일을 동기화합니다.
- 4. iCloud를 수동으로 동기화합니다.
- 5. AMD_pinned_memory - 텍스처로의 전송을 동기화합니다.
- 6. 비동기식 쿼리를 동기화합니다.
- 7. svn을 파괴파와 동기화합니다.
- 8. QC 결함을 동기화합니다.
- 9. pyqt4 qobject 클래스의 pyqt4 신호 연결
- 10. pylint는 PyQt4
- 11. PyQt4 결과
- 12. 히스토그램 (PyQt4)
- 13. FTP가 새 파일 만 동기화합니다.
- 14. Mac OS X과 iPhone을 동기화합니다.
- 15. UserControl에서 여러 속성의 바인딩을 동기화합니다.
- 16. Backbone.js 모델 - 서버와 ID를 동기화합니다.
- 17. 검색 바를 오디오 노래와 동기화합니다.
- 18. iPhone 시간 순서를 음악과 동기화합니다.
- 19. WPF는 ListView와 일부 ViewCollection을 동기화합니다.
- 20. 여러 컨트롤간에 WPF ColorAnimation을 동기화합니다.
- 21. django가 REST를 통해 데이터베이스를 동기화합니다.
- 22. 키보드 선택을 ListBox의 SelectedItem과 동기화합니다.
- 23. 외부에서 HashMap에 대한 액세스를 동기화합니다.
- 24. winforms가 콤보 상자 값을 동기화합니다.
- 25. PyQt4 및 pyuic4
- 26. PyQt4 드래그 앤 드롭
- 27. mpylayer, PyQt4 및 lineEdit
- 28. 시스템 테마 아이콘과 PyQt4
- 29. PyQt4 : 데이터 바인딩?
- 30. PyQt4 파일 선택 위젯
"valueChanged"를 "editingFinished"로 변경했습니다. 고맙습니다! –