我試圖在一個面板內製作一個標題形狀,這又是一個節點內部。 我的代碼,遠遠看上去像:GoJS沒有拉伸形狀以適合父母
var _ = go.GraphObject.make;
var template =
_(go.Node, "Spot",{
minSize: new go.Size(150, NaN)
}
_(go.Panel, go.Panel.Auto,
_(go.Shape, {
figure: "Rectangle",
fill: "#ff00ff",
stroke: "#000000",
strokeWidth: 1,
alignment: new go.Spot(0.5, 0) //aligning it center
}
)
)
);
,如果我想只要我想舒展元素我想補充
stretch: go.GraphObject.Fill
或者(如果水平)
stretch: go.GraphObject.Horizontal
但形狀不是而是水平伸展。
什麼我自己也嘗試到現在爲止:
- 添加defaultStretch到面板
- 添加defaultStretch到節點和麪板
- 更改面板佈局(或定位,如果你想這樣)
- 更改節點佈局(或定位)
- 在三個組件的每一個上設置兩個維度的minSize或maxSize
我在Gojs網站上研究過它,但只能找到上面提到的東西。
謝謝你幫我
PS:如果需要任何額外的信息,我會很樂意提供它
謝謝您的回覆。與此同時,我自己修復了這個問題,主要是在你的回答中做了什麼。但是有一件事需要做,那就是拉伸可以發揮作用:設置東西的寬度。在我的情況下,我有一個節點與兩個面板(一個用於形狀,一個用於文本)。我總是定義一些類似stretch的東西:fill或Text.wrapfit,但是我從來沒有說過如果實際上沒有內容,該怎麼辦。 minSize:在這裏沒有工作。我必須設置minSize,再加上我必須在節點上設置所需的**寬度**,然後一切正常。 – 1D0BE
是的,如果你想要文本包裝允許的寬度必須是有限的。你可以通過設置寬度(a.k.a.desiredSize.width),設置maxSize.width,或通過面板限制其實際寬度來實現。如果將寬度設置爲實數,則不需要設置minSize或maxSize。 http://gojs.net/latest/intro/sizing.html –
那麼,這裏的問題是,即使我設置了minSize(面板,或節點,或兩者),拉伸將不起作用,因爲沒有所需的寬度組。所以現在我有這樣的代碼:minSize:new go.Size(150,NaN),width:150.在我的情況下,寬度被覆蓋很頻繁,因爲我使用長標題確定尺寸(在我的情況) – 1D0BE