我们在在写程序的时候,会有交互输入的情况,例如下面的这个小代码。
def FunctionAlgo():
name = input("请输入姓名:")
print(name)
现在我要写一个界面,点击界面按钮就可以执行程序,界面大概如下所示。
from PyQt5 import QtCore, QtGui, QtWidgets
from news_spider.Fenghuang.Fenghuang.gui.example.runing import hello
class Ui_MainWindow(object):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow")
MainWindow.resize(519, 354)
self.centralwidget = QtWidgets.QWidget(MainWindow)
self.centralwidget.setObjectName("centralwidget")
self.pushButton = QtWidgets.QPushButton(self.centralwidget)
self.pushButton.setGeometry(QtCore.QRect(210, 140, 75, 23))
self.pushButton.setObjectName("pushButton")
MainWindow.setCentralWidget(self.centralwidget)
self.retranslateUi(MainWindow)
QtCore.QMetaObject.connectSlotsByName(MainWindow)
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
self.pushButton.setText(_translate("MainWindow", "Open"))
self.pushButton.clicked.connect(self.OpenClick)
def OpenClick(self):
hello.FunctionAlgo()
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
MainWindow = QtWidgets.QMainWindow()
ui = Ui_MainWindow()
ui.setupUi(MainWindow)
MainWindow.show()
sys.exit(app.exec_())
但是,运行之后“请输入姓名:”这样的输入操作还是出现在了命令行中,我还要返回到命令行中输入相关内容来执行程序,就很不方便。
我想把输入的部分也放置到界面中,我该如何操作呢?
你要在界面弄个文本输入框,提示输入名字就用messbox显示
你写的输入就是再命令行的输入,实现这个功能,需要你自己写个对话框,然后绑定事件,完成输入后,触发主窗口的事件,直接调用输入参数,
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y