当前位置: 首页>>技术教程>>正文


有没有用于python的GUI设计器?

, , ,

问题描述

是否有一个GUI编程python,就像java有NetBeans一样?

我想要一个我们可以拖动&跌落测试盒&就像我们在swing组件中使用netbeans或eclipse一样标记标签。

或者在netbeans或eclipse中是否存在add-on?

最佳解决思路

Glade

如果你想要一个wysiwyg GUI设计师,Glade是你最好的选择:

  • 首先,从软件中心安装glade

  • 创建您的GUI,将其保存为myapp.glade

    software-recommendation,python,ide,ubuntu

  • 转到信号选项卡并设置您的回调,例如on_window1_destroy

  • 在你的python程序中,告诉GTK加载UI定义

    import gtk
    
    
    class MyApp (object):
    
        def __init__(self):
            self.builder = gtk.Builder()
            self.builder.add_from_file("myapp.glade")
            self.builder.connect_signals(self)
    
        def run(self):
            self.builder.get_object("window1").show_all()
            gtk.main()
    
        def on_window1_destroy(self, *args):
            gtk.main_quit()
    
    
    MyApp().run()
    

完成所有设置后,您可以直接进入Glade tutorial(正如Jeremy Kerr在他的回答中所述)。首先了解不同的布局选项和信号。


Quickly

当您感觉舒服的时候,您可以通过Quickly开始使用它,这是一套用于开发软件非常简单的常见任务的程序。它负责翻译,存储配置,打包,包括PPA在内的启动板集成等等。

sudo apt-get install quickly
quickly create ubuntu-application hello-world
cd hello-world/

现在快速创建一个庞大的项目,其中包含您需要的所有设置。一个gui,翻译文件,通过desktopcouch配置等等。

你会很快看到为你设置几个窗口(主应用程序,配置和关于对话)。要开始编辑您的GUI:

  • 运行quickly design

    software-recommendation,python,ide,ubuntu

  • 要访问应用的代码,请运行quickly edit

  • 转到HelloWorldWindow.py文件

  • 现在开始添加信号处理程序和逻辑。

最后,要运行您的应用程序,请键入quickly run

此时,您可以进入PyGTK文档以了解信号,处理程序的签名,不同的小部件的方法等。


另请参阅一些相关问题:

次佳解决思路

Qt-Designer

  • Qt5也可用。

  • QT4设计师

  • QT3设计师

PyQt附带QtDesigner,它是一个非常整洁的图形化GUI编辑器,如果你喜欢用Qt框架编写你的应用程序。

software-recommendation,python,ide,ubuntu

Qt Creator

Qt的新IDE充分支持设计小部件(以上设计者)和QtQuick应用程序,这对轻量级,流畅的touch-enabled应用程序(即平板电脑/移动应用程序)

第三种解决思路

你是在一个完整的IDE(即代码编辑器,运行时环境,UI布局工具)之后,还是只是一个创建UI的工具?

如果这是一个完整的编程环境,请查看’quickly’工具集:

https://wiki.ubuntu.com/Quickly

如果你只是想设计接口,你可以使用’glade’设计器来使用GTK小部件来接口lay-out,然后将该UI定义加载到任何python程序中。这里有一个很好的教程(包括Python和C例子):

http://www.micahcarrick.com/gtk-glade-tutorial-part-1.html

希望这可以帮助!

第四种思路

Eric IDE

尝试使用Eric IDE。我认为它是Python和Qt4的最佳IDE。

software-recommendation,python,ide,ubuntu

第五种思路

wxFormBuilder

它也取决于你想使用哪个部件工具箱。我更喜欢使用python的wxWidgetswxPython

所以我建立GUI的偏好是wxFormBuilder,它可以从以下PPA中获得:

它具有简单的小工具拖放到画布上,您可以快速切换到代码选项卡,以查看它生成的内容,这对我的未配对眼睛而言是干净整洁的。正如锡上的名字所说,它是一个表单生成器,这就是它的专长。所以,不要指望用它来开发一个完整的项目,但是如果你想保持表单设计与分析代码分离,那么它会执行工作很好。

第六种思路

镇上有一个新的孩子:Camelot。它旨在非常快速地构建GUI。它可以帮助您专注于您的应用程序,而不是GUI代码。维护人员说

Camelot provides components for building business applications on top of Python, SQLAlchemy and Qt. It is inspired by the Django admin interface. You can use Camelot to develop both simple and complex business applications at warp speed.

该框架已在国际Python会议上多次提交。它的优点是

Developer advantages

  • On top of high quality and proven technology

  • Views are bound to data model without writing code

  • Customizable through the Actions framework

  • Documented from introduction tutorial to report printing

  • Warpspeed to deployable solution

User advantages

  • Responsive and familiar GUI

  • High quality editors and controls

  • Tons of built in functions such as import, export, printing, backup and restore

  • Mapped to business processes

查看http://www.python-camelot.com/了解更多信息,演示文稿,YouTube视频等。

免责声明:我已经看到了这一点,并与开发人员进行了交谈。我可能会有偏见,但我真的相信这是非常棒的软件。

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/530.html,未经允许,请勿转载。