繁体   English   中英

无法运行PyQt4示例

[英]unable to run PyQt4 example

我正在尝试通过记事本++运行pyqt4示例。 我早些时候问了这个问题( 运行PyQt4示例代码时什么也没有发生 ),最终卸载了Enthought Canopy和所有python残余并安装了cygwin。 现在,当我运行示例代码时,我从npp的控制台收到以下错误。 nppExec命令-> C:\\cygwin\\bin\\python2.7.exe -i "$(FULL_CURRENT_PATH)" 示例代码始终显示在底部。

我能得到的最接近的是启动cygwin x(从bash shell输入startx),尽管我无法退出该窗口,但可以在该窗口中打开示例窗口。

我感觉自己在这里,我只是想创建一些简单的GUI,而我正努力使示例工作。 Cygwin的python安装缺少经典的IDLE吗?

C:\cygwin\bin\python2.7.exe -i "C:\Users\Brian\Dropbox\Python\PYqt_practice.py"
Process started >>>
cygwin warning:
  MS-DOS style path detected: C:\Users\Brian\Dropbox\Python\PYqt_practice.py
  Preferred POSIX equivalent is: /cygdrive/c/Users/Brian/Dropbox/Python/PYqt_practice.py
  CYGWIN environment variable option "nodosfilewarning" turns off this warning.
  Consult the user's guide for more details about POSIX paths:
    http://cygwin.com/cygwin-ug-net/using.html#using-pathnames
C:\Users\Brian\Dropbox\Python\PYqt_practice.py: cannot connect to X server 
<<< Process finished. (Exit code 1)
================ READY ================

PyQt4示例代码

import sys
from PyQt4 import QtGui


def main():

    app = QtGui.QApplication(sys.argv)

    w = QtGui.QWidget()
    w.resize(250, 150)
    w.move(300, 300)
    w.setWindowTitle('Simple')
    w.show()

    sys.exit(app.exec_())


if __name__ == '__main__':
    main()

与Cygwin一起安装的PyQT4和PyQT5直接模拟它们等效的Linux软件包的作用,这意味着它们确实希望您运行X服务器。 Windows专用软件包显然没有。

基本上,您有两种选择:

  1. 放弃Cygwin,使用不需要X服务器的Windows专用软件包。 (您也可以在Cygwin环境中运行非Cygwin python,但这会给您带来一些麻烦,例如Unicode。)
  2. 像这样为Cygwin安装X服务器:

    1. 获取xorg-server软件包
    2. 运行startx

    如果这导致您遇到问题,请尝试:

    1. 运行xwin -multiwindow而不是startx

    现在,图标应该出现在您的任务栏中。

    1. 用鼠标右键单击它
    2. 悬停在“应用程序”上
    3. 单击xterm

    恭喜你! 您只需在X环境中运行xterm shell。 查看您的应用程序现在是否可以运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM