Skip to main content

用于在 Python 中构建丰富的用户界面的声明式 DSL

项目描述

欢迎来到珐琅

构建状态 Appveyor 构建状态 https://github.com/nucleic/enaml/workflows/Continuous%20Integration/badge.svg 代码覆盖率状态 https://github.com/nucleic/enaml/workflows/Documentation%20building/badge.svg 文件状态 PyPI 版本

Enaml 是一种编程语言和框架,可轻松创建专业品质的用户界面。

你得到什么

  • 一种声明式编程语言,具有 Python 风格。

  • 数十个开箱即用的小部件(基于Qt构建)。

  • 基于约束的布局引擎(基于Kiwi构建)。

  • 与数据模型工具(基于Atom构建)集成。

  • 一个(可选)编辑器,允许您在键入代码时查看结果的样子。

  • 一个文档齐全且易于遵循的代码库,以及包含大量工作示例的文档。

  • 许多流行编辑器的语言定义。

它可以为您做什么

  • 为一系列平台构建原生 GUI 应用程序

    • 快速简单或复杂专业。

    • 一目了然地查看您的 GUI 的结构。

  • 让您快速原型化新的 GUI 界面。

    • 使用符号约束智能地布局您的 GUI。

    • 它会自动适应不同的平台、不同的窗口大小。

    • 告诉布局引擎您的布局优先级是什么,而不必计算像素。

  • 鼓励易于维护的代码:

    • GUI 可以检测模型中的更新,并自动刷新其小部件,无需低级代码。

    • 模型和视图之间的清晰分离,同时保持控制器代码简单。

      • 您可以将 Python 代码直接合并到视图层中。

      • 随着 GUI 设计的发展,约束引擎可以调整布局。

      • 面向对象的设计允许您在项目的其他部分中重用部分 GUI。

  • 让您根据您的特定需求自定义 GUI。

    • 与您的 Python 代码集成。

    • 包括样式表以快速更改整个或部分应用程序的外观。

    • 扩展可用的小部件或构建您自己的小部件。

支持的版本

Enaml 应用程序可以在任何支持 Python (3.6+) 的平台上运行。Qt 后端需要 Qt(5.9+,参见https://doc.qt.io/qt-5/supported-platforms.html)。

这包括 Linux、Windows、MacOSX、Android 和 iOS。(Enaml 的自动测试在 Linux、Windows 和 MacOSX 上运行。)

Enaml 在修改后的 BSD 许可证下获得许可。

学到更多

入门章节是了解更多信息的良好第一步。它包括安装说明

观看一些关于 Enaml 及其功能的介绍性演讲:

https://img.youtube.com/vi/ycFEwz_hAxk/2.jpg

S. Chris Colbert (@sccolbert) 出席 Enthought 2012。

https://img.youtube.com/vi/G5ZYUGL7uTo/1.jpg

Tom Stordy-Allison (@tstordyallison) 出席 Pycon UK 2016。

Enaml文档包括所有详细信息,包括有用的示例

您可以在Enaml Google GroupStackOverflow 上使用 Enaml 标签提问

有关版本信息,请参阅 发行说明

例子

Enaml文档包含许多 关于如何使用 Enaml的功能齐全的代码示例。它们的范围从如何使用小部件的简单演示,到对 Enaml GUI 可定制性的高级探索。

员工教程

员工教程展示了如何使用约束和验证器来创建易于使用且具有专业外观的应用程序:

http://enaml.readthedocs.io/en/latest/_images/tut_employee_layout.png

纽扣环

按钮环示例则相反。结果既不专业也不易于使用,但它显示了基于约束的布局的强大功能和灵活性——这可能很愚蠢,但这是典型的布局系统无法实现的。

http://enaml.readthedocs.io/en/latest/_images/ex_button_ring.png

停靠项目警报

Dock Item Alerts Example展示了 Enaml 应用程序外观的一些可定制性。此应用程序的外观基于 Visual Studio 2010 样式,带有可停靠项,但根据显示的警报的重要性进行了一些自定义。

http://enaml.readthedocs.io/en/latest/_images/ex_dock_item_alerts.png

查看文档以获取更多示例。

项目详情


下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

enaml-0.15.2.tar.gz (8.1 MB 查看哈希

已上传 source

内置发行版

enaml-0.15.2-cp310-cp310-win_amd64.whl (671.3 kB 查看哈希

已上传 cp310

enaml-0.15.2-cp310-cp310-win32.whl (661.8 kB 查看哈希

已上传 cp310

enaml-0.15.2-cp310-cp310-musllinux_1_1_x86_64.whl (1.7 MB 查看哈希

已上传 cp310

enaml-0.15.2-cp310-cp310-musllinux_1_1_i686.whl (1.7 MB 查看哈希

已上传 cp310

enaml-0.15.2-cp310-cp310-macosx_10_9_x86_64.whl (647.4 kB 查看哈希

已上传 cp310

enaml-0.15.2-cp39-cp39-win_amd64.whl (671.5 kB 查看哈希

已上传 cp39

enaml-0.15.2-cp39-cp39-win32.whl (661.9 kB 查看哈希

已上传 cp39

enaml-0.15.2-cp39-cp39-musllinux_1_1_x86_64.whl (1.7 MB 查看哈希

已上传 cp39

enaml-0.15.2-cp39-cp39-musllinux_1_1_i686.whl (1.7 MB 查看哈希

已上传 cp39

enaml-0.15.2-cp39-cp39-macosx_10_9_x86_64.whl (647.4 kB 查看哈希

已上传 cp39

enaml-0.15.2-cp38-cp38-win_amd64.whl (671.5 kB 查看哈希

已上传 cp38

enaml-0.15.2-cp38-cp38-win32.whl (662.0 kB 查看哈希

已上传 cp38