问题标签 [enaml]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
272 浏览

python - 在 Anaconda 中安装 enaml

我正在尝试为最新的 Anaconda 发行版(4.3.1)安装 enaml。http://nucleic.github.io/enaml/docs/get_started/installation.html上的安装指南说:

下面的部分描述了如何从头开始安装 Enaml 及其所有依赖项,从安装 Python 运行时开始。这些说明假定用户的系统安装了 C++ 编译器和 Git 命令行工具,并且在系统路径上可用。

简单的方法

如果从头开始安装和构建 Enaml 及其依赖项并不吸引人,那么免费(且非附属的)Anaconda Python 发行版提供了一个完整的 Python 环境,其中包含相当新的 Enaml 版本和许多其他有用的软件包。

如果你有一个可用的 C++ 编译器,你可以使用 pip 安装:

$ pip 安装搪瓷

你能告诉我安装 C++ 编译器和 Git 命令行工具并使它们在系统路径上可用的最简单方法吗?

我尝试了什么:我尝试安装 Visual Studio,但结果是 32 位,所以当 pip 安装 enaml 或 atom 时出现以下错误:

原子造轮失败

致命错误 LNK1112:模块机器类型“x64”与目标机器类型“X86”冲突

0 投票
1 回答
212 浏览

python - 将 pyqtgraph 嵌入到 enaml 中......如何?

我对 pyqt 和 pyqtgraph 很陌生,所以如果我缺少基本的东西,我很抱歉。

我有获取和绘制数据的 python 程序,其中 GUI 由 enaml 实现。然而,对于实时绘图应用程序,MPL Canvas (matplotlib) 的速度非常慢,因此我希望使用 pyqtgraph 来提高性能。看到的直接冲突是搪瓷需要有

而为了使用pyqtgraph,以下似乎是必要的。

enaml 和 pyqtgraph 可以共存还是至少可以将 pyqtgraph 嵌入到 enaml 线程中?如果有人可以给我一个线索,那将是一个很大的帮助。谢谢。

0 投票
0 回答
249 浏览

python - 使用 PyInstaller 打包 Enaml 应用程序

我有一个窗口/视图 enaml 应用程序(后端是 PySide)。我已经将它打包到.exe使用 PyInstaller 并且它成功完成但是当我运行可执行文件时它抱怨文件中的模块.enaml(我已经在文件中包含了文件和解析器.spec,见下文)。对出了什么问题有任何想法吗?

这是运行.exe文件的错误:

CaseView在文件中定义,colEq.enaml引用的行是:

除了 PyInstaller 生成的默认值之外,我的规范文件还添加了以下内容:

平台是 Python 2.7、x86、Win 10。

0 投票
1 回答
1139 浏览

python - 如何创建多项目选择下拉列表?

我想在 enaml 中创建一个多项目选择下拉菜单。

ComboBox 小部件提供此功能,但我们一次只能选择一项。ObjectCombo 小部件也是如此(但在功能上与 ComboBox 略有不同)。

即使是能够密切复制能够从列表中选择多个项目的最终功能的东西,也会有所帮助,即使它不一定是下拉菜单。

0 投票
1 回答
298 浏览

python - 搪瓷中是否有绘图/画布小部件?

我想让 UI 基本上是一个图像,用户可以通过线连接的点来追踪路径。我希望它是跨平台的,所以我正在考虑尝试 enaml。我不确定如何做到这一点。

我浏览了文档和示例,但找不到像画布小部件这样的东西。是否可以使用搪瓷在表面上进行任意绘图(点、线等)?

0 投票
2 回答
80 浏览

qt - 为什么我的 Enaml ImageView 不能按比例缩小?

这是一个简单的 Enaml 文件,用于显示单个图像 - 一个800x1210 像素的图像

窗口打开得相当大以适应整个图像,但是当我尝试调整窗口大小时,它不会缩小 - 图像无法缩小,即使scale_to_fit是 True。另一方面,它将允许将窗口调整得更大,但(正确地)不会放大图像 - 它只会在其周围增加更多空间。

进行实验,我设置allow_upscaling为 True,它允许图像增长,但不会缩小。它知道如何扩大规模,但不会缩小规模。

好吧,也许 ImageView 必须有一个最小尺寸,所以我补充说:

这应该覆盖为 ImageView 小部件计算的“智能最小尺寸”,但没有区别。

我是 Enaml 的新手,所以我怀疑存在基本的误解。

当调整周围窗口的大小时,我需要做什么才能获得 ImageView 以允许缩小大图像?

版本:

  • Python 3.6.3 (v3.6.3:2c5fed8, Oct 3 2017, 18:11:49) [MSC v.1900 64 位 (AMD64)] 在 win32
  • 搪瓷==0.10.2
  • PyQt5==5.10.1
0 投票
1 回答
131 浏览

python - 创建用于 enaml 的 python 类时,传递 Atom 的目的是什么?

我正在尝试使用 Enaml 编写我的第一个 GUI,但在他们创建类时我无法弄清楚对 Atom 的引用。我知道这是一个 IDE(我正在使用 PyCharm),但我不确定它是否引用了它。我似乎在网上找不到任何有用的文档。您能在他们的文档中的示例代码中向我解释吗?我已将其格式化如下:

我想我应该提到这不是链接文档中提供的整个文件!

编辑:我在他们的github上错过了一些有用的东西,在那里我发现了更多,尽管仍然缺乏,文档。

0 投票
1 回答
45 浏览

enaml - [Enaml][py36]:订阅运算符不会触发“可见”观察者

我正在构建一个分为 3 列和 1+ 行的 GUI。行数由用户通过 IntField 决定。

由于每个(显示的)行都将包含绘图,因此我不想将它们从窗口中分离,以避免重新创建它们。所以我想隐藏不应该显示的行,保留已经创建和附加的图。为了做到这一点,我正在考虑容器的可见属性。

不幸的是,就我而言,订阅似乎不适用于可见字段。

这是代码:

有人有想法吗?

0 投票
1 回答
91 浏览

enaml - 如何根据 Enaml 中另一个字段的值验证一个字段?

假设我有一个带有 2 个 IntField 的表单。如何根据 IntField A 中的输入验证 IntField B?例如,如果 A == 1,则 B 只能在 0-30 之间;如果A == 2,B只能在0-50之间;else B 可以是任何其他数字

从我所能谷歌的所有内容中,我只能找到 IntValidator 仅验证该字段而无法链接到另一个字段。我找不到任何示例来显示如何更新 IntValidator 中的最小/最大值,也没有任何自定义验证器可以获取另一个字段的值,以便验证可以根据另一个字段中值的变化而改变......

经过一番测试,其实是可以将fld_a传递给自定义验证器,然后在validate函数中获取fld_a.value,最后将自定义验证器设置为fld_b。不确定这是否是进行此类验证的方法。

0 投票
1 回答
658 浏览

python - 没有名为“atom”的模块

我第一次尝试运行 enaml-native create app,但我总是收到错误:

没有名为“atom”的模块

但是我已经安装了模块:

输出来自: pip install atom

有人知道如何解决这个问题吗?