Einstellung der Größe des panels
Habe ich 3 Platten. Einer ist der Haupt-panel, das hält den 2 kleineren Platten.
Für die Haupt-panel, die ich verwendet,
setPreferredSize(new Dimension(350, 190));
Für die kleineren linken panel, die ich verwendet,
setPreferredSize(new Dimension(100, 190));
Für die kleineren rechten Bereich, die ich verwendet,
setPreferredSize(new Dimension(250, 190));
aber die kleineren panels bleiben die gleiche Größe. Wie kann ich dieses Problem beheben?
Dies ist der code den ich habe in meinem Haupt-Panel.
import model.*;
import java.awt.*;
import javax.swing.*;
public class Panel extends JPanel
{
public Panel(Prison prison)
{
setup();
build(prison);
}
private void setup()
{
setBorder(BorderFactory.createLineBorder(Color.blue));
setLayout(new BorderLayout(1, 1));
setPreferredSize(new Dimension(350, 190));
}
private void build(Prison prison)
{
JTabbedPane tab = new JTabbedPane();
tab.addTab("Input", null, new InputPanel(), "Input");
tab.addTab("Display", null, new DisplayPanel(), "Display");
add(tab);
}
}
Sie vernachlässigen, um zu zeigen, das nur den relevanten code, in dem das InputPanel aufgebaut ist.
InformationsquelleAutor Karen | 2009-10-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies nicht tun.
Den ganzen Punkt von layout-Managern zu ermöglichen, dynamische Größenanpassung, die notwendig ist, nicht nur für die user-resizable Fenster, aber auch wechselnde Texte (Internationalisierung) und verschiedenen Standard-Schriftgrößen und-Schriftarten.
Wenn Sie nur verwenden Sie die layout-Manager richtig, Sie kümmern sich um panel-Größen. Um zu vermeiden, dass Ihre Komponenten streckte alle über der Bildschirm, wenn der Benutzer erhöht die Größe des Fensters, eine äußerste panel mit einem Links-ausgerichtet FlowLayout und der rest der UI als Ihr einziges Kind - das wird die Benutzeroberfläche seiner bevorzugten Größe und ein überschuss wird mit der Hintergrundfarbe gefüllt.
InformationsquelleAutor Michael Borgwardt
Wie es aussieht, bist du mit einem GridLayout, oder vielleicht ein FlowLayout, weder was Sie wollen. Sie wollen wahrscheinlich verwenden Sie ein BoxLayout, die respektiert seine Komponenten bevorzugten Größen.
Sie können nicht ändern die Größe der Zellen in einem GridLayout(Zellen haben gleiche dimension)
InformationsquelleAutor Jonathan Feinberg
auch - das ist die bevorzugte Größe. wenn Sie nicht zulassen möchten, ändern der Größe, Sie können auch die maximale Größe sowie.
wenn Sie in der Lage sind, möchten Sie vielleicht zu prüfen, die MIG layout, aber BoxLayout ist auch einfach zu bedienen und in der java-toolkit bereits.
InformationsquelleAutor Jill Renee
Ist es dieser.
Lassen Sie sich nicht die layout-manager passen Ihre Größen.
InformationsquelleAutor smkelsey