Wie kann ich die Größenänderung von Boxen einschränken/verbieten? [Aktualisiert]Ich habe ein Fenster, das einige Graph Builder, Filter und andere Elemente enthält. Wenn ich den Filter verwende, kann meine Legende im Graph Builder die Größe ändern, wenn einige Kategorien ausgeschlossen sind. Dann würde die gesamte Graph Builder-Box ihre Größe ändern und das Design zerstören.
Frage: Wie platziere ich den Graph Builder in einer Box und lege eine feste Größe fest, sodass sich die Außenseite nicht bewegt, egal wie sie die Größe in dieser Box ändert?
Hier ist ein Beispiel:
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>Es erstellt eine H-Liste mit Graph Builder auf der linken Seite und Datenfilter auf der rechten Seite. Wenn ich im Filter nur die Kategorie "kurz" auswähle, ändert die Graph Builder-Box die Größe und verschiebt alles andere.
Ich will das nicht. Wie soll ich meine Display-Boxen organisieren, damit sich nichts rechts von einer Box, die ihre Größe ändert, verschiebt?
SkripterstellungBetreff: Wie kann ich die Größenänderung von Boxen einschränken/verbieten? [Aktualisiert]Abstandshalter sind sehr praktisch, um den Platz in einem Fenster zu kontrollieren.Versuche dies:
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>
Es erstellt eine Abstandsbox direkt über dem Graph Builder.Wenn das Diagrammerstellungsfeld die Breite des Abstandsfelds unterschreitet, bewegt sich der Datenfilter nicht.Wenn Sie jedoch die Graph Builder-Box interaktiv vergrößern, sehen Sie wieder das Verhalten, das Sie gerade erleben.
Um besser zu sehen, was die Abstandsbox für Sie tut, versuchen Sie, sie durch diese zu ersetzen:
Spacer Box(size(560, 10), Color("yellow"))