別の HasTraits オブジェクトの他のいくつかの異なるインスタンスを含む HasTraits オブジェクトを作成しようとしています。ただし、マスター オブジェクトで多くの HasTraits オブジェクトを初期化すると、常に問題が発生するようです。
エラーを生成する以下の簡単な例を作成しました。誰かがこれを行う最善の方法を説明できますか? -いつ traits.Instance(traits.Int) を使うべきなのか、それとも traits.Int だけを使うべきなのかわからない -コンストラクターで特性の初期値を渡すにはどうすればよいですか? これを行うたびに、「type int required but found type traits.Int」のようなエラーが発生します
ご協力いただきありがとうございます
import enthought.traits.api as traits
import enthought.traits.ui.api as traitsui
class Simple(traits.HasTraits):
minimum = traits.Int()
maximum= traits.Int()
ranged = traits.Range(minimum, maximum)
traits_view = traitsui.View(traitsui.Group(
traitsui.Item('minimum'),
traitsui.Item('maximum'),
traitsui.Item('ranged')
))
class Complex(traits.HasTraits):
s1=Simple(minimum=1.0,maximum=5.0)
s2=Simple(minimum=2.0,maximum=10.0)
s3=Simple(minimum=traits.Int(1.0),maximum=traits.Int(5.0))
traits_view = traitsui.View(traitsui.Group(
traitsui.Item('s1'),
traitsui.Item('s2')
))
c= Complex()
c.configure_traits()