Уведомления

Группа в Telegram: @pythonsu

#1 Май 2, 2016 13:25:30

Potesuch
Зарегистрирован: 2016-05-02
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

СОздание виджета из функции

self.label_6 = QtGui.QLabel("label_6", self)                                                                 #создаю label_6
self.label_6.setGeometry(QtCore.QRect(0, 170, 141, 31))
self.font = QtGui.QFont()
self.font.setPointSize(10)
self.label_6.setFont(font)
self.label_6.setFrameShape(QtGui.QFrame.Box)
self.label_6.setObjectName("label_6")
self.label_6.mouseReleaseEvent = self.label_clicked                                     #ставлю действие на клик
    
def label_clicked(self, event):
        self.label_7 = QtGui.QLabel("label_6 clicked", self)                               #создаю label_7
        self.label_7.setGeometry(QtCore.QRect(0, 200, 141, 31))
        self.font = QtGui.QFont()
        self.font.setPointSize(10)
        self.label_7.setFont(font)
        self.label_7.setFrameShape(QtGui.QFrame.Box)  
        self.label_7.setObjectName("label_7")

Здравствуйте. Извините за глупый вопрос, но почему не создается label_7?

Отредактировано Potesuch (Май 2, 2016 13:27:08)

Офлайн

#2 Май 2, 2016 13:38:51

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

СОздание виджета из функции

Показывайте минимальный рабочий пример. Вы кусок кода выдрали из какого-то контекста и хотите, чтобы по нему кто-то гадал, что вы вообще пытаетесь смастерить?



Офлайн

#3 Май 2, 2016 14:03:50

Potesuch
Зарегистрирован: 2016-05-02
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

СОздание виджета из функции

FishHook
Показывайте минимальный рабочий пример. Вы кусок кода выдрали из какого-то контекста и хотите, чтобы по нему кто-то гадал, что вы вообще пытаетесь смастерить?
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import sys
from PyQt4 import *
class Ui_MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
        self.label_6 = QtGui.QLabel("label_6", self)                                                               
        self.label_6.setGeometry(QtCore.QRect(0, 170, 141, 31))
        self.font = QtGui.QFont()
        self.font.setPointSize(10)
        self.label_6.setFont(self.font)
        self.label_6.setFrameShape(QtGui.QFrame.Box)
        self.label_6.setObjectName("label_6")
        self.label_6.mouseReleaseEvent = self.label_clicked
        self.statusBar()
        self.setGeometry(230, 140, 800, 512)
        self.setWindowTitle("")
        self.show()
        
    def label_clicked(self, event):
        self.label_7 = QtGui.QLabel("label_6 clicked", self)                               
        self.label_7.setGeometry(QtCore.QRect(0, 200, 141, 31))
        self.font = QtGui.QFont()
        self.font.setPointSize(10)
        self.label_7.setFont(self.font)
        self.label_7.setFrameShape(QtGui.QFrame.Box)  
        self.label_7.setObjectName("label_7")
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Ui_MainWindow()
    sys.exit(app.exec_())

Отредактировано Potesuch (Май 2, 2016 14:05:57)

Офлайн

#4 Май 2, 2016 17:53:42

vic57
Зарегистрирован: 2015-07-07
Сообщения: 909
Репутация: +  127  -
Профиль   Отправить e-mail  

СОздание виджета из функции

странный пример.
1. объект класса надо создать в init
вообще в коде много ошибок

  def initUI(self):
        self.label_6 = QtGui.QLabel("label_6", self)                                                               
        self.label_6.setGeometry(QtCore.QRect(0, 170, 141, 31))
        self.font = QtGui.QFont()
        self.font.setPointSize(10)
        self.label_6.setFont(self.font)
        self.label_6.setFrameShape(QtGui.QFrame.Box)
        self.label_6.setObjectName("label_6")
        self.label_6.mouseReleaseEvent = self.label_clicked
        self.statusBar()
        self.setGeometry(230, 140, 800, 512)
        self.setWindowTitle("")
        #self.show() это лучше вынести в main()
        
    def label_clicked(self, event):
        self.label_7 = QtGui.QLabel("label_6 clicked", self)                               
        self.label_7.setGeometry(QtCore.QRect(0, 200, 141, 31))
        #self.font = QtGui.QFont()
        #self.font.setPointSize(10) self.font уже определен
        self.label_7.setFont(self.font)
        self.label_7.setFrameShape(QtGui.QFrame.Box)  
        self.label_7.setObjectName("label_7")
        self.label_7.show() # это забыли
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Ui_MainWindow()
    ex.show()
    sys.exit(app.exec_())

Отредактировано vic57 (Май 3, 2016 14:34:55)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version