我使用wxPython開發了一個應用程序,並使用cx_freeze將它轉換爲.exe。我在WinXP上安裝了應用程序,它工作正常。我唯一的疑慮就是gui應用程序正在使用後面的命令提示符運行。我怎樣才能擺脫這個命令提示符?我想象它是在那裏顯示錯誤等....必須有一種方法將錯誤重定向到日誌文件,而不是顯示此命令提示符?提前致謝。在Windows環境下運行wxPython應用程序而不顯示命令提示符
代碼:
我使用wxPython開發了一個應用程序,並使用cx_freeze將它轉換爲.exe。我在WinXP上安裝了應用程序,它工作正常。我唯一的疑慮就是gui應用程序正在使用後面的命令提示符運行。我怎樣才能擺脫這個命令提示符?我想象它是在那裏顯示錯誤等....必須有一種方法將錯誤重定向到日誌文件,而不是顯示此命令提示符?提前致謝。在Windows環境下運行wxPython應用程序而不顯示命令提示符
代碼:
見How can I hide the console window when freezing wxPython applications with cxFreeze?
我也寫了這裏面有一個解決辦法:
http://www.blog.pythonlibrary.org/2010/08/12/a-cx_freeze-tutorial-build-a-binary-series/
的關鍵部分是接近文章的結尾:
from cx_Freeze import setup, Executable
exe = Executable(
script="sampleApp.pyw",
base="Win32GUI",
)
setup(
name = "wxSampleApp",
version = "0.1",
description = "An example wxPython script",
executables = [exe]
)
你需要一點說:base =「Win32GUI」
然後它應該工作。
您可以將.py文件重命名爲.pyw,然後它將在不顯示控制檯的情況下運行。
上面的工作....但是,我有快速的問題。在WinXP經典模式與XP模式下運行時,我的窗口大小略有不同。經典模式按比例顯示一切; XP模式的按鈕大小相同,但屏幕與它們重疊。我如何在各種Windows平臺上獲得一致的外觀。 – suffa
我對你的程序瞭解不多。當你調整框架的大小時,他們是否會「彈回」到位?如果是這樣,那麼你需要在init結尾附近添加一個self.Layout()調用。 –
實際上,我使用SetSizeHints來鎖定屏幕。我不希望用戶進行調整。現在,我可以讓另一個應用程序可用於在XP模式下運行他/她的電腦的用戶(更改窗口大小以適應)。但是,必須有一些方法可以自己調整到用戶仍不能重新調整大小的位置。 – suffa