我正在尝试在enaml文件中使用id,当我使用
运行程序时enaml-run hello_world.enaml
我得到了这个输出
File "hello_world.enaml", line 10
id: pb1
SyntaxError: invalid syntax
输出始终在id上产生无效的语法错误。 我如何正确识别身份证?
来源:
from enaml.layout.api import vbox, hbox, spacer, align
from enaml.widgets.api import (Window, Container, GroupBox, Form, PushButton,
CheckBox, RadioButton, Label, ScrollArea, ToolBar, Action, ActionGroup,
Splitter, Field)
enamldef Left(Container):
GroupBox:
title="Consoles"
PushButton:
id: pb1
text="hello"
enamldef Right(Container):
Label:
text="Yo"
enamldef Bottom(ToolBar):
PushButton:
Field:
text="Search..."
enamldef Main(Window):
title="RetroArch"
initial_size = (800,600)
Container:
Splitter:
Left:lt:
pass
Right:rt:
pass
Bottom:
pass
答案 0 :(得分:3)
'id'标签在0.7.0版本中已弃用,在0.8.0版本中已完全删除。声明标识符的正确方法是在元素类型之后内联,如下所示:
PushButton: pb1:
pass
Enaml的回购移动版本0.7.0到此处: https://github.com/nucleic/enaml
现在最新版本的文档: http://nucleic.github.io/enaml/docs/
文档(如框架)仍在进行中。
如果您遇到任何问题,请随时在跟踪器上打开问题(直到我设置正确的列表)。
来源:我是Enaml的作者
答案 1 :(得分:1)
这是一条评论,但我将其作为答案发布,因为我还没有足够的声誉发表评论。我可以用enaml 0.6.8运行你的例子,所以也许你的enaml版本已关闭了吗?
要检查的另一件事是,您是否可以在enaml文档中运行示例,例如: this one,也使用ID。