如何限制\禁止框調整大小? [更新]我有一個窗口,其中包含一些 Graph Builder、Filter 和其他元素。 當我使用過濾器時,當排除某些類別時,我在 Graph Builder 上的圖例可以改變大小。 然後整個 Graph Builder 框會改變大小,破壞設計。
問題:如何將 Graph Builder 放在某個盒子中並設置固定大小,以便無論它如何在該盒子內調整大小,外部都不會移動?
這是一個例子:
dt = New Table( "TestTable",
Add Rows( 2 ),
New Column( "x", Numeric, "Continuous", Format( "Best", 6 ), Set Values( [2, 4] ) ),
New Column( "y", Numeric, "Continuous", Format( "Best", 6 ), Set Values( [3, 5] ) ),
New Column( "Cat", Character, "Nominal", Set Values( {"short", "a very long category"} ) )
);
HBox = H List Box(
dt << Graph Builder(
Size( 390, 368 ),
Show Control Panel( 0 ),
Variables( X( :x ), Y( :y ), Overlay( :Cat ) ),
Elements( Points( X, Y, Legend( 5 ) ) )
),
filter = dt << Data Filter(
Mode( Show( 1 ), Include( 1 ) ),
Add Filter(
columns( :Cat, ),
Display( :Cat, "Check Box Display" ),
)
)
);
NW = New Window( "Example", <<SHOW window=""></SHOW>它使用左側的圖形生成器和右側的數據過濾器創建 H 列表。 如果我只在過濾器中選擇“短”類別 - 圖形生成器框會更改大小,從而改變其他所有內容。
我不想要那個。 我應該如何組織我的顯示框,以便改變大小的框右側的任何內容都不會移動?
腳本回复:如何限制\禁止框調整大小? [更新]間隔盒對於控制窗口中的空間非常方便。試試這個:
dt = New Table( "TestTable",<BR />Add Rows( 2 ),<BR />New Column( "x", Numeric, "Continuous", Format( "Best", 6 ), Set Values( [2, 4] ) ),<BR />New Column( "y", Numeric, "Continuous", Format( "Best", 6 ), Set Values( [3, 5] ) ),<BR />New Column( "Cat", Character, "Nominal", Set Values( {"short", "a very long category"} ) )<BR />);<BR /><BR />HBox = H List Box(
V List Box(
Spacer Box(size(560, 0)),
dt << Graph Builder(
Size( 390, 368 ),
Show Control Panel( 0 ),
Variables( X( :x ), Y( :y ), Overlay( :Cat ) ),
Elements( Points( X, Y, Legend( 5 ) ) )
)
),
filter = dt << Data Filter(
Mode( Show( 1 ), Include( 1 ) ),
Add Filter(
columns( :Cat, ),
Display( :Cat, "Check Box Display" ),
)
)
);
NW = New Window( "Example", <<SHOW window=""></SHOW>
它在圖形構建器上方創建一個間隔框。如果圖形構建器框低於間隔框的寬度,則數據過濾器將不會移動。但是,如果您以交互方式使圖形構建器框變大,您將再次看到您當前遇到的行為。
為了更好地了解間隔盒為您做了什麼,請嘗試用這個替換它:
Spacer Box(size(560, 10), Color("yellow"))