は、今私は、動的にXMLファイルに基づいて、そのウィジェットを生成.NETモノGTK#アプリケーションを開発しています。だから私はウィジェットをたくさん積み重ねる必要があります。 (私は水平にストレッチするウィジェットを必要として)私はVBoxのを使用してみましたが、私はウィジェットが垂直方向にストレッチする必要はありません。このコードではスタッキングウィジェットは
void BuildObjectProperties(Container parent, List<ObjectProperty> objectProperties)
{
var verticalBox = new VBox(false, 0);
foreach (var objectProperty in objectProperties)
{
BuildObjectProperty(verticalBox, objectProperty);
}
parent.Add(verticalBox);
}
void BuildObjectProperty(Container parent, ObjectProperty objectProperty)
{
switch (objectProperty.Type)
{
case PropertyType.Text:
parent.Add(new Entry());
break;
case PropertyType.Number:
parent.Add(new SpinButton(0,10,1));
break;
case PropertyType.Note:
parent.Add(new TextView());
break;
case PropertyType.List:
parent.Add(new TreeView());
break;
case PropertyType.Enum:
parent.Add(new ComboBox());
break;
case PropertyType.Reference:
parent.Add(new ComboBox());
break;
}
}
ウィジェットを作成して、コメントを追加しますが(たとえば、10pxのを)彼らはすべてのフレームに均等分布を持っている(彼らは遠く離れている)、私はそれらの間の距離が一定になりたかった取得も私が望んでいましたスクリーン上に存在するウィジェットの数にもかかわらず、その高さは固定されます。
たぶんVBOXは、私が使用してすべきか、本当にありませんが、私は本当にこの他の方法を行う方法がわかりません。だから私はいくつかの助けを求めています:)
PS:もう一つの(私はパネルをスクロールするスクロールバーを持っていると思ったあまりにも多くがあるので、もし...があるでしょうどのように多くのウィジェットがわかりません、これについての助けもありがたいでしょう。)ありがとうございました。
);ちょうどあなたがすべて知っているようにします – muszeo