Wie würde ich meinem Code Gridbag-Layout hinzufügen, damit das Ausgabefeld die Länge von gui innerhalb der Rahmenparameter im folgenden Code umfasst? Ich habe zwei andere Klassen, die mit dieser Arbeit gut gehen. Wenn das GUI auffüllt, funktioniert alles, außer das Ausgabe-Textfeld überspannt nicht die Länge von gui, so dass der Text im Textfeld abgeschnitten ist und ich das beheben will, aber ich weiß nicht, wie ich es so machen soll wie nie gebrauchte Gittertasche.Wie muss ich GridBagLayout implementieren?
unten zeigt das Bild, wie die GUI aussehen soll:
Der Code in Fragegegeben unten:
public ATMGui() {
checkingAcc = new Account(1000);
savingAcc = new Account(2000);
currentSelect = new Account(0);
atmFrame = new JFrame("Automated Teller Machine");
output = new JTextField();
panel = new JPanel();
, dass ich glaube, das Problem, weil sein kann ich hat die Größe der Ausgabebox nicht vollständig deklariert, so dass sie nur ein Raster sozusagen überspannt, während ich möchte, dass sie beide überspannt. Kann mir jemand bei der Entscheidung helfen, ob ich das Raster im obigen Code anders deklariere oder ob es untergeht? Außerdem habe ich über GridBagLayout und andere Methoden gelesen, aber mein Problem ist, dass ich nicht sicher bin, wie/wo ich es hier implementieren soll.
atmWithdraw = new JButton("Withdraw");
atmDeposit = new JButton("Deposit");
transfer = new JButton("Transfer to");
balance = new JButton("Balance");
atmWithdraw.addActionListener(this);
panel.setLayout(new GridLayout(4, 2));
panel.setBorder(BorderFactory.createEmptyBorder(15, 15, 0, 15));
panel.add(atmWithdraw, 0);
panel.add(atmDeposit, 1);
panel.add(transfer, 2);
panel.add(balance, 3);
panel.add(checking, 4);
panel.add(savings, 5);
panel.add(output, BorderLayout.LINE_END);
atmFrame.add(panel);
atmFrame.setSize(300, 175);
atmFrame.setVisible(true);
Wenn Sie noch nie GridBagLayout verwendet haben, jetzt ist die Zeit, – ControlAltDel
zu lernen, das kein SSCCE ist !!! Wir sind an keinem Code interessiert, der NICHT direkt mit dem Layout der Komponenten auf dem Frame verbunden ist, da sich Ihre Frage speziell auf Layout-Manager bezieht. – camickr
habe es danke und danke für den Link – 3monkeys1gorilla