python+pyside+py2exe+inno setup 開發圖形介面程式
阿新 • • 發佈:2019-01-27
pyside-uic E:\user\PycharmProjects\XXX\XXX.ui -o XXX_ui.py
我們把XXX_ui.py放在專案裡,然後編輯py指令碼。例如:
fromPySide.QtGuiimport*
fromXXX_uiimportUi_Form
classLoginForm(QDialog):
def__init__(self, parent=None):
QDialog.__init__(self, parent)
self.ui= Ui_Form()
self.ui.setupUi(self) 好了,剩下的就是完成你的程式了。 2 py2exe 完成程式開發後,我們現在打算將其轉換成windows上的可獨立執行的可執行程式(不需要安裝python和Qt)。首先需要編寫一個setup.py的指令碼,程式碼如下: from distutils.coreimportsetup
importpy2exe
# Set options
options ={'py2exe':
{
'dll_excludes':['w9xpopen.exe']#This file is for win9x platform
}
}
# Setup
setup(options = options,
windows =[{
'script':'Logspliter.py',"icon_resources":[(1,"logspliter.ico")]
}]
) 下面我們執行如下命令: python setup.py py2exe 如果順利的話,會出現如下資訊:
進入專案目錄,我們就會看到dist資料夾和build資料夾,其中dist就是我們需要的真正內容。進入dist資料夾,看看生成的exe是否可以正常執行。如果可以,恭喜你,成功了!我們只需要把dist資料夾發給別人,不管他們的電腦是否安裝了python和Qt,你的程式都可以正常使用。不過使用這種方式還是有缺點的,就是哪怕你寫個hello world程式,dist資料夾也會很大,一般在20-30M左右。
3 inno setup
最後一步,使用inno setup將dist資料夾打包起來,生成安裝檔案。這樣我們就可以把這個獨立的安裝檔案與他人分享了。
寫起來很簡單,但是在開發的過程中,還是遇到了很多問題的。
問題1:視窗如何固定大小?
答:1 設定它的最大大小和最小大小,並且使它們的值相等,都等於當前你設定的視窗尺寸。
self.setMinimumSize(X, Y)
self.setMaximumSize(X, Y)
2 使用setFixedSize()。
self.setFixedSize(X,Y)
問題2:使用python setup.py py2exe,生成可執行檔案時,報如下錯誤:
from pkg_resources import load_entry_point ImportError: No module named pkg_resources
答:百度一下,沒找到結果。Google一下,最終在Stackoverflow上找到答案了,其實也簡單,應該是python的setuptools安裝得有問題,使用如下命令:
curl http://python-distribute.org/distribute_setup.py | python
不過,需要說明的是,這是在linux下的命令,翻譯一下,就是我們把distribute_setup.py指令碼下載下來,使用python執行一下就可以了。
fromXXX_uiimportUi_Form
classLoginForm(QDialog):
def__init__(self, parent=None):
QDialog.__init__(self, parent)
self.ui= Ui_Form()
self.ui.setupUi(self) 好了,剩下的就是完成你的程式了。 2 py2exe 完成程式開發後,我們現在打算將其轉換成windows上的可獨立執行的可執行程式(不需要安裝python和Qt)。首先需要編寫一個setup.py的指令碼,程式碼如下: from
importpy2exe
# Set options
options ={'py2exe':
{
'dll_excludes':['w9xpopen.exe']#This file is for win9x platform
}
}
# Setup
setup(options = options,
windows =[{
'script':'Logspliter.py',"icon_resources":[(1,"logspliter.ico")]
}]
) 下面我們執行如下命令: python setup.py py2exe 如果順利的話,會出現如下資訊: