Comment restreindre \ interdire le redimensionnement de la boîte ? [mise à jour]J'ai une fenêtre contenant des éléments Graph Builder, Filter et d'autres éléments. Lorsque j'utilise le filtre, ma légende sur le générateur de graphiques peut changer de taille lorsque certaines catégories sont exclues. Ensuite, toute la boîte de Graph Builder changerait de taille, brisant la conception.
Question : Comment puis-je placer le générateur de graphiques dans une boîte et définir une taille fixe pour que, peu importe la façon dont il se redimensionne à l'intérieur de cette boîte, l'extérieur ne bouge pas ?
Voici un exemple:
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>Il crée H List avec Graph Builder à gauche et Data Filter à droite. Si je ne sélectionne que la catégorie "courte" dans le filtre - la boîte du générateur de graphiques change de taille en déplaçant tout le reste.
Je ne veux pas ça. Comment dois-je organiser mes boîtes d'affichage pour que tout ce qui se trouve à droite d'une boîte qui change de taille ne se déplace pas ?
ScriptRe : Comment restreindre \ interdire le redimensionnement de la boîte ? [mis à jour]Les boîtes d'espacement sont très pratiques pour contrôler l'espace dans une fenêtre.Essaye ça:
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>
Il crée une boîte d'espacement juste au-dessus du générateur de graphes.Si la boîte du générateur de graphique descend en dessous de la largeur de la boîte d'espacement, le filtre de données ne bougera pas.Cependant, si vous agrandissez de manière interactive la boîte du générateur de graphiques, vous verrez à nouveau le comportement que vous rencontrez actuellement.
Pour mieux voir ce que fait la boîte d'espacement pour vous, essayez de la remplacer par celle-ci :
Spacer Box(size(560, 10), Color("yellow"))