import sys
from PyQt5 import QtWidgets
from PyQt5.QtWidgets import QMainWindow, QLabel, QLineEdit
from PyQt5.QtCore import QSize
class MainWindow(QMainWindow):
def __init__(self):
QMainWindow.__init__(self)
self.setMinimumSize(QSize(320, 140))
self.setWindowTitle("PyQt Line Edit example (textfield) - pythonprogramminglanguage.com")
self.nameLabel = QLabel(self)
self.nameLabel.setText('Name:')
self.line = QLineEdit(self)
self.line.move(80, 20)
self.line.resize(200, 32)
self.nameLabel.move(20, 20)
self.line.textChanged.connect(self.change_linedit)
def change_linedit(self):
print('Your name: '+self.line.text())
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
mainWin = MainWindow()
mainWin.show()
sys.exit(app.exec_())
if __name__ == "__main__":
app = QApplication([])
window = QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(window)
window.show()
sys.exit(app.exec_())
что ж вы такой тупой то
import numpy as np
class A:
def __init__(self, img):
self.imgA = img
def show(self):
print('id(self.imgA) = ', id(self.imgA), 'self.imgA =', self.imgA)
class B:
def __init__(self):
self.imgB = np.array((1, 1, 1), np.uint8)
self.painter = A(self.imgB)
def get_img(self):
for i in range(10):
self.imgB = np.array((i, i+1, i+2), np.uint8)
print('id(self.imgB) = ', id(self.imgB), 'self.imgB =', self.imgB)
self.painter.show()
if __name__ == '__main__':
b = B()
b.get_img()
"C:\Program Files\Python38\python.exe" D:/Documents/PycharmProjects/tstcv/main.py
id(self.imgB) = 2253578859664 self.imgB = [0 1 2]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253597315440 self.imgB = [1 2 3]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253578859664 self.imgB = [2 3 4]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253597315440 self.imgB = [3 4 5]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253578859664 self.imgB = [4 5 6]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253597315440 self.imgB = [5 6 7]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253578859664 self.imgB = [6 7 8]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253597315440 self.imgB = [7 8 9]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253578859664 self.imgB = [ 8 9 10]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
id(self.imgB) = 2253597315440 self.imgB = [ 9 10 11]
id(self.imgA) = 2253578837808 self.imgA = [1 1 1]
Process finished with exit code 0
Вы вопрос то читали?
Как реализовать на python передачу «указателя» изображения opencv в конструктор другого класса?
Зачем писать что попало?
Мне не нужно передавать в метод show img!!!
И зачем мне статический метод???
свидетельствует, что вы слишком широко шагаете. Мелкая подсказка - QLineEdit и при других событиях (не только когда текст изменился) умеет присоединенные функции вызывать. Читайте документацию. А советовать сложно, потому что непонятно, что вы от программы хотите добиться. Дальше,
Первый вариант - создать список/массив этих виджетов, может быть, отнаследоваться от QlineEdit (надо разбираться с возможностью кастомизации диспетчеризации сигналов). Можно и ручками функции в класс добавлять на ходу... Второй вариант - использовать что-нибудь, grid-like. Ищите.