HMHx2_YY 2017-09-16 15:29 采纳率: 50%
浏览 1260
已采纳

请各位大佬帮看看问题出在哪里~~使用PyQt的设计师 信号与槽不响应

点击 “求解”按钮之后,为什么不输出结果? connect()函数不是已经连接了要响应的函数了吗?

图片说明

#!/usr/bin/python3

-*- coding: UTF-8 -*-

from PyQt5.QtWidgets import QWidget,QApplication
from PyQt5 import uic
from qua_rc import Ui_MainWindow
import sys
import numpy

#qtCreatorFile = "qua.ui"
#Ui_MainWindow,QtBaseClass = uic.loadUiType(qtCreatorFile)

class MyWindow(QWidget,Ui_MainWindow):
def init(self):
super(MyWindow,self).__init__()
self.setupUi(self)

    self.calc_qua_button.clicked.connect(self.quadretic)

def quadretic(self):
    a = self.a_box.toPlainText().toDouble()
    b = self.b_box.toPlainText().toDouble()
    c = self.c_box.toPlainText().toDouble()
    p = numpy.poly1d([a, b, c])
    L = p.r
    self.result1_window.setText(str(L[0]))
    self.result1_window.setText(str(L[1]))

if name == '__main__':
app = QApplication(sys.argv)
window = MyWindow()
window.show()
sys.exit(app.exec_())

  • 写回答

2条回答 默认 最新

  • 「已注销」 2017-09-22 07:41
    关注

    Hello, 你百度发的私信为何回复不了?
    你上面的代码有问题
    问题1:
    获取QlineEdit值用:QLineEdit.text(),
    获取QTextEdit值用:QTextEdit.toPlainText()
    问题2:
    QlineEdit没有toDouble方法
    问题3:
    一元二次方程接收两个值的text,你只给result1赋值了,你让result2 怎么想

    修改代码如下:

     #!/usr/bin/python3
    # -*- coding: UTF-8 -*-
    from PyQt5.QtWidgets import QWidget,QMainWindow,QApplication
    from PyQt5 import uic
    from qua_rc import Ui_MainWindow
    import sys
    import numpy
    #qtCreatorFile = "qua.ui"
    #Ui_MainWindow,QtBaseClass = uic.loadUiType(qtCreatorFile)
    class MyWindow(QWidget,Ui_MainWindow):
        def __init__(self):
            super().__init__()
            self.setupUi(self)
            self.calc_qua_button.clicked. connect(self.quadretic)
    
        def quadretic(self):
            a = self.a_box.text()
            b = self.b_box.text()
            c = self.c_box.text()
            p = numpy.poly1d([a, b, c])
            L = p.r
            self.result1_window.setText(str(L[0]))
            self.result2_window.setText(str(L[1]))
    
    if __name__ == '__main__':
        app = QApplication(sys.argv)
        window = MyWindow()
        window.show()
        sys.exit(app.exec_())
    

    执行结果:
    图片说明

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥20 SQL server表计算问题
  • ¥15 C# P/Invoke的效率问题
  • ¥20 thinkphp适配人大金仓问题
  • ¥20 Oracle替换.dbf文件后无法连接,如何解决?(相关搜索:数据库|死循环)
  • ¥15 数据库数据成问号了,前台查询正常,数据库查询是?号
  • ¥15 算法使用了tf-idf,用手肘图确定k值确定不了,第四轮廓系数又太小才有0.006088746097507285,如何解决?(相关搜索:数据处理)
  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出