⑴ python庫PYQT4中,connect函數參數,如何填能夠聯結程序中自己定義的函數
QtCore.QObject.connect(self.ui.button_open, QtCore.SIGNAL('clicked()'),self.file_dialog)
舉個例子了,這個是一個窗口類中,打開按鈕,在點擊的時候調用函數為 self.file_dialog()
這個self.file_dialog()就是自己定義的函數。
例如我在我的窗口類里,自己定義了一個函數:
def pt(self):
self.button_open.setText(QtGui.QApplication.translate("notepad", "關閉", None, QtGui.QApplication.UnicodeUTF8))#功能是重置我的名為"notepad"的窗口的button_open按鈕的顯示為關閉
然後就可以這樣調用這個函數
QtCore.QObject.connect(self.ui.button_open, QtCore.SIGNAL('clicked()'),self.pt)
⑵ python程序如何調用其他的py
1、直接引用
例:from test.a import b
2、繼承
例:class c(b): 或 def c(b):
3、根據框架,如pytest 指定某py 進行執行
例:pytest.main(['-s', 'test222.py'])
⑶ Qt圖形界面程序如何調用fortran編寫的控制台程序
fortran程序運行過程中通過對Qt界面控制項上參數的輸入
你可以將fortran程序運行過程中輸入到標准輸入中,然後QT去讀標准輸入到textEdit中。。
⑷ 用PYQT設計好了界面做成py,怎麼用另一py文件調用其中的控制項
看你這個代碼裡面pushButton並不是在__init__裡面定義或者class裡面定義的,而是在class的函數裡面定義的,如果要調用,你必須先調用setupUI這個函數。
⑸ 用PYQT設計好了界面,用另一PY文件調用,要怎麼做
直接就在這裡面寫也可以的,不用調用。
網上多看Blog,博客園和CSDN上例子都有。
我花了一周自學搞定了一個跟你類似的小項目。
你一定要調用的話,import A from A這種就可以,參照:
如何調用另一個.py文件中的類和函數
⑹ python pyqt4 無法調用matplotlib.pyplot包 請教
1、先設置好環境變數
在path變數中設置好以下路徑:
C:\Python27\Scripts
C:\Python27
2、大部分報錯問題都是因為庫與庫之間存在依賴關系
matplotlib依賴dateutil和pyparsing,如果Python裡面沒有安裝dateutil和pyparsing,那麼後續使用matplotlib的時候很可能會遇到依賴問題。所以需要安裝dateutil。
Matplotlib, a 2D plotting library.
Requires numpy, dateutil, pytz, pyparsing, cycler, setuptools, and optionally pillow, pycairo, tornado, wxpython, pyside, pyqt4, ghostscript, miktex, ffmpeg, mencoder, avconv, or imagemagick.
所以上面這些包肯定是都需要有的,如果沒有遇到問題,可能是因為代碼中沒有引用這些包而已;或者已經安裝了。
2.1、使用easy_install.exe來安裝所需要依賴的包
現在dateutil使用easy_install命令來安裝,(easy_install會自己從網路上需要最新的合適的包來安裝,所以不需要你自己去尋找和下載)
只需要輸入 easy_install python-dateutil 命令就可以。
如果找不到easy_install 命令,要麼是你的環境變數沒有設置好,請參考1。要麼是你的python包太老,沒有預裝easy_install,那就參考3,先安裝easy_install
3、安裝easy_install.exe, 手動下載安裝包到本地安裝
找到ez_setup.py文件,下載到本地E:\iso\VisualStudio2010\ (我是下載到這里,你自己就隨意吧)
在cmd窗口下面,輸入:
Python E:\iso\VisualStudio2010\ez_setup.py
成功後,C:\Python27\Scripts\目錄下會多了easy_install.exe
4、使用easy_install.exe安裝dateutil和pyparsing。。
反正根據提示,缺啥就用easy_install安裝啥,這個easy_install是按照關鍵字來搜索安裝包的。
easy_install python-dateutil
easy_install pyparsing
easy_install pip
4.1、如果不用easy_install.exe安裝,也可以使用pip通過本地安裝或者網路安裝
使用pip安裝 的命令是: pip install numpy
如果要手動把包下載到本地再安裝,請參考6
5、把路徑如:C:\Python27\Lib\site-packages\scipy\lib中的six.py six.pyc six.pyo三個文件拷貝到C:\Python27\Lib\site-packages目錄下。
6、使用下載到本地的whl來安裝各種包
在下面頁面下載所對應的32bit或者64bit,區分python2.7還是python3的
numpy-1.11.1+mkl-cp27-cp27m-win_amd64.whl
pandas-0.18.1-cp27-cp27m-win_amd64.whl
scipy-0.17.1-cp27-cp27m-win_amd64.whl
matplotlib-1.5.2-cp27-cp27m-win_amd64.whl
把上面這些需要的whl放到python的scripts目錄下,然後用下面的命令來安裝即可
c:\Python27-x64\Scripts>
pip install pandas-0.18.1-cp27-cp27m-win_amd64.whl
⑺ 易語言2個組合框加個編輯框怎麼調用同個文件的數據
最簡單也可能是最笨的方法。忘記還有個編輯框.
.版本 2
.程序集 窗口程序集1
.子程序 _組合框1_列表項被選擇
組合框2.清空 ()
.如果真 (組合框1.現行選中項 = 0)
組合框2.加入項目 (「張三」, 0)
組合框2.加入項目 (「李四」, 1)
.如果真結束
.如果真 (組合框1.現行選中項 = 1)
組合框2.加入項目 (「張三1」, 0)
組合框2.加入項目 (「李四1」, 1)
.如果真結束
.子程序 _組合框2_列表項被選擇
編輯框1.內容 = 「」
.如果真 (組合框2.現行選中項 = 0)
編輯框1.內容 = 組合框2.取項目文本 (組合框2.現行選中項) + 「:」 + 「90分」
.如果真結束
.如果真 (組合框2.現行選中項 = 1)
編輯框1.內容 = 組合框2.取項目文本 (組合框2.現行選中項) + 「:」 + 「80分」
⑻ c如何調用python程序
C語言如何調用python,相關步驟如下:
首先,C語言中調用python,要使用頭文件Python.h。
2、接著,定義一個調用python的函數。
相關推薦:《Python教程》
3、函數中,設置python庫的路徑。
4、然後,初始化python。
5、運行一個python代碼,輸出How are you。
6、最後,釋放python。
⑼ pyqt qwiget怎樣啟動另一個窗體
一、Pyqt5 創建第一個窗體
很多人寫窗體程序都是直接敲代碼,不使用設計器,我個人不是很贊成這種做法。使用設計器的好處是直觀、維護方便,尤其開發復雜窗體的效率高。
但是每次修改ui文件後,需要重新生成py文件,會將原來的內容覆蓋掉,為了避免這種情況,引入了一個中間類。主要步驟如下:
1使用QtDesigner創建一個簡單的對話框,保存成simpleDialog.ui。
2使用cmd,進入simpleDialog.ui文件所在的目錄,運行命令pyuic5 simpleDialog.ui >ui_simpleDialog.py
3打開ui_simpleDialog.py,pyqt自動生成的代碼如下(無需任何修改):
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Form(object):#注意pyqt5窗體從object繼承,不是QMainWindow了
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 300)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(60, 70, 241, 131))
self.pushButton.setObjectName("pushButton")
self.retranslateUi(Form)
self.pushButton.clicked.connect(Form.close)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.pushButton.setText(_translate("Form", "PushButton"))
可以看到剛才新建的對話框的類名稱是」Ui_Form」。
4新建一個simpleDialog.py文件,編寫代碼如下:
from PyQt5 import QtCore, QtGui, QtWidgets
from ui_simpledialog import Ui_Form
import sys
class SimpleDialogForm(Ui_Form):#從自動生成的界面類繼承
def __init__(self, parent = None):
super(SimpleDialogForm, self).__init__()
def yourFunctions(self):
Pass
#這個類中處理你自己的業務邏輯。界面ui可隨心所欲的修改,不影響你已經編寫的邏輯。
自定義一個類(SimpleDialogForm)繼承自pyqt自動生成的類,然後覆寫」構造函數」,剩餘的工作就是你自己想要添加的功能了。
5完善運行測試代碼,如下:
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
main = QtWidgets.QMainWindow()#創建一個主窗體(必須要有一個主窗體)
content = SimpleDialogForm()#創建對話框
content.setupUi(main)#將對話框依附於主窗體
main.show()#主窗體顯示
sys.exit(app.exec_())
6為什麼要這么做?
基於界面與實現分離的原則,我們使用QtDesigner設計的窗體,僅僅作為界面使用,具體業務邏輯通過單獨的文件實現,這樣以後如果界面發生變動,pyqt自動生成窗體代碼時不會覆蓋掉我們已經編寫的業務邏輯。
7推薦的做法:
為了有良好的封裝性,將中間類修改為:
class SimpleDialogForm(Ui_Form, QtWidgets.QMainWindow):
def __init__(self, parent = None):
super(SimpleDialogForm, self).__init__()
self.setupUi(self)#在此設置界面
#在此,可添加自定義的信號綁定
self.pushButton.clicked.connect(self.openFile)
self.pushButton_2.clicked.connect(self.closeApp)
測試代碼這樣寫:
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
main = SimpleDialogForm()
main.show()#在外面只需要調用simpleDialogForm顯示就行,不需要關注內部如何實現了。
sys.exit(app.exec_())
⑽ 如何用python調用子程序