Найти - Пользователи
Полная версия: как сильно я люблю Python(или я чего-то не понимаю)(Qtdesigner)
Начало » Python для новичков » как сильно я люблю Python(или я чего-то не понимаю)(Qtdesigner)
1
blatr
Проблема заключается в следующем: мне был необходим графический интрефейс, поэтому я начал с tkintera. Затем я узнал, что существует qtdesigner(более простой и удобный в плане использования), который должен был мне типо помочь. Но в qtdesigner происходит полный бред, после добавления виджетов я пытаюсь начать редактировать код и нажимаю кнопку “показать код” и вылазит вот такая ошибка (Невозможно запустить CPython33/Lib/site-packages/PyQT4/bin\uic). После долгих хождений по гуглу я набрел на форум , на котором люди пишут о невозможности показывания кода в qtdesigner и предлогают свой метод: тупо кидать, которые нужны и потом работать с ними в отдельных программах. Конкретно там приводился пример программы eclipse(с установленным pydev-ом). Такой метод действительно работает, но все- таки неужели нет способа как починить qtdesigner или какое-нибудь другое, непознанное мною, решение данной проблемы. С уважением, человек, не сильно соображающий в python.
FishHook
Qt - это С++ библиотека, и соответственно QtDesigner из комплекта Qt не сможет сделать для Вас код python. С Qt можно работать из питона, постольку поскольку есть привязки Qt к питону: PyQt и PySide, но вы не получите полнообъемлющего функционала, как например Visual Studio + С# + WPF.
Но суть даже не в этом, а в том, что QtDesigner генерирует XML-подобный конфиг, а Вы его пытаетесь запустить в интерпретаторе питона. С тем же успехом можете попробовать запустить Войну и мир и удивиться, что глупый питон не понимает произведений великого классика.

Ну и по сабжу. Херово ты искал.
blatr
FishHook
Qt - это С++ библиотека, и соответственно QtDesigner из комплекта Qt не сможет сделать для Вас код python. С Qt можно работать из питона, постольку поскольку есть привязки Qt к питону: PyQt и PySide, но вы не получите полнообъемлющего функционала, как например Visual Studio + С# + WPF.Но суть даже не в этом, а в том, что QtDesigner генерирует XML-подобный конфиг, а Вы его пытаетесь запустить в интерпретаторе питона. С тем же успехом можете попробовать запустить Войну и мир и удивиться, что глупый питон не понимает произведений великого классика.Ну и по сабжу. Херово ты искал.
Я правильно понял, что мне придется выполнять те же операции как, если бы я работал с Tkinter-ом? Получается, что отличия между ними только в функционале? Я действительно надеялся найти аналог visual studio для Python ибо очень уж он удобный)
FishHook
Еще раз.
С википедии цитирую.
Разработанный интерфейс сохраняется в файл с расширением ui, который подключается к создаваемой программе с помощью специальных методов библиотеки Qt. Этот файл имеет xml-формат, и может, в случае необходимости, редактироваться в любом текстовом редакторе.
Этот файл с расширением .ui Вам нужно подключить к своей питон-программе.
Вот с туториала
#! /usr/bin/env python
import sys
from PyQt4 import QtGui, uic
app = QtGui.QApplication(sys.argv)
window = uic.loadUi("imagedialog.ui")
window.show()
sys.exit(app.exec_()

#! /usr/bin/env python
import sys
from PyQt4 import QtCore, QtGui, uic
class ImageDialog(QtGui.QDialog):
     def __init__(self):
         QtGui.QDialog.__init__(self)
         # Set up the user interface from Designer.
        self.ui = uic.loadUi("imagedialog.ui")
	self.ui.show()
         # Make some local modifications.
         self.ui.colorDepthCombo.addItem("2 colors (1 bit per pixel)")
         # Connect up the buttons.
         self.connect(self.ui.okButton, QtCore.SIGNAL("clicked()"),
                      self, QtCore.SLOT("accept()"))
         self.connect(self.ui.cancelButton, QtCore.SIGNAL("clicked()"),
                      self, QtCore.SLOT("reject()"))
app = QtGui.QApplication(sys.argv)
window = ImageDialog()
sys.exit(app.exec_())
kozlo22
И еще: изучите учебник по PyQt Прохоренка.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB