2013-05-05 95 views
1

我想通过Notepad ++运行pyqt4示例。我早些时候问过这个问题(Nothing happens when running PyQt4 example code),并最终卸载了Enthought Canopy和python的所有残余并安装了cygwin。现在,当我运行示例代码时,我从npp的控制台得到以下错误。 nppExec命令 - >C:\cygwin\bin\python2.7.exe -i "$(FULL_CURRENT_PATH)"。示例代码显示在底部。无法运行PyQt4示例

我能得到的最接近的是启动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() 
+0

您是否尝试使用首选的POSIX等效路径而不是'C:\ Users \ Brian \ Dropbox \ Python \ PYqt_practice.py'运行它? – 2013-05-05 11:14:13

+0

我已经放弃了现在在cygwin中运行它。我非常困惑。我已经重新安装了python并且现在添加了所有东西(numpy,pyqt4,matplotlib),并且能够成功运行该示例,但只能从IDLE运行,而不能从npp执行 – 2013-05-05 19:41:41

回答

0

与Cygwin的直接效仿其相当于Linux软件包做,这意味着他们希望你运行一个X服务器安装PyQt4的和PyQT5。专门用于Windows的包显然没有。

基本上,你有两个选择:

  1. 放弃对专门到Windows Cygwin和使用的包装,不需要X服务器。 (你也可以运行在Cygwin环境非Cygwin的蟒蛇,但是这将会给你带来一些麻烦,例如使用Unicode。)
  2. 安装X服务器的Cygwin是这样的:

    1. 获取xorg-server
    2. 运行startx

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

  3. 运行xwin -multiwindow而不是startx

现在图标应该出现在您的托盘中。

  • 用鼠标右键
  • 悬停 “应用程序”
  • 点击xterm点击它。
  • 恭喜!你只是在X环境下运行一个xterm shell。看看你的应用程序现在是否适用