Найти - Пользователи
Полная версия: Как сделать из .ui .py файл (Подробно)
Начало » GUI » Как сделать из .ui .py файл (Подробно)
1 2
jeha
Вот новая проблема возникла: получил файл.ру но не получаеться его подключить((
Файл с интерфейсом у меня называеться sklad.ру
В нем есть:

class Ui_MainWindow(object):
def setupUi(self, MainWindow):

def retranslateUi(self, MainWindow):


Делаю так:

import sys, sklad
from PyQt4 import QtGui, uic

if __name__==“__main__”:
app = QtGui.QApplication(sys.argv)
age_sel = sklad.Ui_MainWindow()
age_sel.show()
sys.exit(app.exec_())

Получаю вот такой ответ:

Traceback (most recent call last):
File “C:\Vega-Auto_Sklad\Vega-Avto_SkLad.py”, line 10, in <module>
age_sel.show()
AttributeError: ‘Ui_MainWindow’ object has no attribute ‘show’

Я так понимаю что в классе просто отсутствуе метод “show”, но ведь в .ui все работает, а тут не хочет.
В чем проблема??
pasaranax
сначала надо вызвать Ui_MainWindow.setupUi()
jeha
А что надо прописать вот
Ui_MainWindow.setupUi(тут??)
если ничего, то пишет что введен 1 аогумент, а требуеться 2.
посмотрел примеры там пишут self - написал выдает что не определен..
pasaranax
self определен только внутри класса. Нужно создать класс интерфейса (например, главное окно), в конструкторе которого вызывается этот метод, примерно так:
from Ui_MainWindow import Ui_MainWindow

class MainWindow(QMainWindow):
def __init__(self, parent=None):
QMainWindow.__init__(self, parent)
self.ui = Ui_MainWindow()
self.ui.setupUi(self)
Потом можно обращаться к элементам интерфейса через объект self.ui, например вот так:
self.ui.field.setViewport(QGLWidget())
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