RangeEditor
内で正しく動作しない動作に遭遇しましたTableEditor
。
from traits.api import *
from traitsui.api import *
class TableItem(HasTraits):
r=Range(1,6)
class Table(HasTraits):
t=List(Instance(TableItem))
def _t_default(self):
return [TableItem()]
traits_view=View(
Item(name='t',
editor=TableEditor( columns=[
ObjectColumn(label='Number',editor=RangeEditor(mode='spinner'),
name='r',editable=True)
]
),height=250,width=250,show_label=False))
Table().configure_traits()
このプログラムの結果、範囲は 0 から 1 の間でのみ調整できるようになります。mode='spinner'
が指定されていない場合、範囲は 0 から 1 の間の浮動小数点数のように動作します。もちろん、上記の例では、範囲が0 は、特性が間隔 [1,6] 以外の値を受け入れないため、エラーが吐き出されます。
この動作は明らかにバグであり、enaml が前進してもおそらく修正されることはありません。しかし、簡単な回避策はありますか?