Tengo un problema con la acción de mi botón PyQt. Me gustaría enviar una cadena con la función pero recibí este error:
TypeError: el argumento 1 tiene un tipo inesperado ‘NoneType’
- Cómo mostrar texto parcialmente en negrita en QListWidgetItem con QtCore.Qt.UserRole
- PyQt5 - Automatizar módulo serial
- Dado un pyqtBoundSignal cómo determinar la ranura?
- Ejecute la aplicación principal de la interfaz gráfica de usuario de Pyqt como un proceso independiente sin locking
- El botón pyqt se enlaza automáticamente a la función on_ ... _clicked sin conectar o pyqtSlot
import sys from PyQt5.QtWidgets import QApplication, QPushButton, QAction from PyQt5.QtCore import QObject, pyqtSignal from PyQt5.QtGui import * from PyQt5.uic import * app = QApplication(sys.argv) cocktail = loadUi('create.ui') def mixCocktail(str): cocktail.show() cocktail.showFullScreen() cocktail.lbl_header.setText(str) widget = loadUi('drinkmixer.ui') widget.btn_ckt1.clicked.connect(mixCocktail("string")) widget.show() sys.exit(app.exec_())
Según lo sugerido por el usuario 3030010 y ekhumoro , espera una función que se pueda llamar . En cuyo caso deberías reemplazar ese argumento con lambda: micCocktail("string")
Y TAMBIÉN no usas str
, es un tipo de datos incorporado en python, lo he reemplazado con _str
import sys from PyQt5.QtWidgets import QApplication, QPushButton, QAction from PyQt5.QtCore import QObject, pyqtSignal from PyQt5.QtGui import * from PyQt5.uic import * app = QApplication(sys.argv) cocktail = loadUi('create.ui') def mixCocktail(_str): cocktail.show() cocktail.showFullScreen() cocktail.lbl_header.setText(_str) widget = loadUi('drinkmixer.ui') widget.btn_ckt1.clicked.connect(lambda: micCocktail("string")) widget.show() sys.exit(app.exec_())