Во-первых, использование pyuic4
определенно не является «плохой практикой».
Существует три основных способа вставить пользовательский интерфейс PyQt4 в ваш код:
- Пиши все вручную
- Используйте
pyuic4
для автоматической генерации модуля Python, который можно импортировать
- Используйте пакет
uic
для загрузки ui
файлов непосредственно во время выполнения
Из них первые два на сегодняшний день являются наиболее распространенными, и большинство документов, учебных пособий, рекомендаций и т. Д., С которыми вы столкнетесь, будут использовать эти методы.
Хороший источник учебников по PyQt4 можно найти в этом разделе PyQt4 Wiki . Тем не менее, я, вероятно, должен отметить, что, хотя они все еще актуальны, многие из них довольно старые и поэтому все еще используют сигналы и слоты старого стиля.
Однако разницу между старым и новым стилями не так сложно понять, поэтому, возможно, простой пример - это все, что нужно.
Вот старый способ подключения сигнала нажатия кнопки к методу обработчика (он же слот):
self.connect(self.button, QtCore.SIGNAL('clicked()'), self.handleButtonClick)
и вот новый стиль:
self.button.clicked(self.handleButtonClick)
Как видите, новый стиль гораздо проще и более питоничен. С другой стороны, старый стиль очень похож на то, как сигналы связаны с использованием C ++ (и по этой причине все еще может быть полезен в определенных обстоятельствах).
Если у вас возникают проблемы с подключением сигналов при написании графического интерфейса, вы всегда можете задать вопрос здесь - но гораздо проще получить хорошие ответы, если вы зададите конкретные вопросы, включающие пример кода.