0

我在 PyQt4 中运行一个非常基本的示例。如下所示。我在 Enthought Canopy 安装上苦苦挣扎,在 cygwin Python 实现上苦苦挣扎,最后一次只安装了 Python 2.7、Numpy 1.7.1、MatPlotLib 1.2.0。

当我从 IDLE 执行示例时,它工作正常。虽然当我尝试使用 nppExec 从 Notepad++ 执行它时,控制台窗口只是挂起。我没有看到任何地方弹出一个小空窗口,也没有给出任何错误代码。

  • 我从 nppExec (-i) 尝试了交互模式和非交互模式
    • 我的 nppExec 命令是python "$(FULL_CURRENT_PATH)"
  • 我尝试从函数定义中提取代码的内容并自行运行它,同样的事情。

.

  • Python 2.7.4
  • 记事本++ 6.3.2
  • PyQt4 4.10.1

    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('Brian')
        w.show()
    
    sys.exit(app.exec_())
    
    
    if __name__ == '__main__':
        main()
    
4

2 回答 2

2

在 NppExec 中,使用命令

CMD /C python -u "$(FULL_CURRENT_PATH)"

代替

python "$(FULL_CURRENT_PATH)"
于 2013-06-20T21:32:43.810 回答
0

我有/有同样的问题。使用w.showMaximized()而不是w.show()为我解决了在记事本++中不显示窗口的问题。随后打开的小部件可以用w.show().

但是,您的代码对我不起作用,我得到了 Python 回溯。相反,我使用(使用 PySide):

import sys
from PySide import QtGui

app = QtGui.QApplication(sys.argv)

def main():

    w = QtGui.QWidget()
    w.resize(250, 150)
    w.move(300, 300)
    w.setWindowTitle('Brian')
    w.showMaximized()
    app.exec_()


if __name__ == '__main__':
    main()

并且,作为一种解决方法,只需添加类似w.resize(width, height)after 你调用w.showMaximized()将窗口大小调整为目标大小的内容。

于 2015-04-07T18:41:10.133 回答