kalkulator

Odpowiedz Nowy wątek
2019-07-15 18:00
0

Witam, piszę sobie mały program kalkulatora naukowego i mam pytanie.... Chcę zrobic tak aby przycisk "=" był na długości "-" , "9", "6" a jedynie co to potrafię zrobić odstęp między 6 a 9 i 3 a 6. Potrafię ustawić szerokość ale długość mi coś nie wychdzi. Z góry proszę o pomoc i dziękuję :)


/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package kalkulator;

import javax.swing.*;
import java.awt.*;

public class Kalkulator extends JFrame{
    private Object panel2;

    public Kalkulator()
            {
                initComponents();
            }

    public void initComponents()
    {
        this.setTitle("Kalkulator");
        this.setBounds(300, 300, 300 ,200);

        panel1.add(wyswietlacz);
        panelButton.add(button1);
        panelButton.add(button2);
        panelButton.add(button3);
        panelButton.add(button4);
        panelButton.add(button5);
        panelButton.add(button6);
        panelButton.add(button7);
        panelButton.add(button8);
        panelButton.add(button9);
        panelButton.add(button0);
        panelButton.add(buttonMnozenia);
        panelButton.add(buttonDzielenia);
        panelButton.add(buttonDodawania);
        panelButton.add(buttonOdejmowania);
        panelButton.add(buttonUsuwania);
        panelButton.add(buttonKasowania);
        //panelButton.add(buttonRownania);
       // panelButton.add(buttonOtwarciaNawiasu);
        //panelButton.add(buttonZamknieciaNawiasu);

        GroupLayout layout = new GroupLayout(panelButton);
        panelButton.setLayout(layout);
        layout.setAutoCreateGaps(true);
        layout.setAutoCreateContainerGaps(true);

        layout.setHorizontalGroup(
                layout.createSequentialGroup()
                .addGroup(
                layout.createParallelGroup()
                        .addComponent(buttonMnozenia).addComponent(button7).addComponent(button4).addComponent(button1)
                )
                        .addGroup(
                        layout.createParallelGroup().addComponent(buttonDzielenia).addComponent(button8).addComponent(button5).addComponent(button2).addComponent(button0)
                        )
                        .addGroup(
                        layout.createParallelGroup().addComponent(buttonOdejmowania).addComponent(button9).addComponent(button6).addComponent(button3).addComponent(buttonUsuwania)
                             ).addComponent(buttonRownania, GroupLayout.PREFERRED_SIZE,55,GroupLayout.PREFERRED_SIZE)

           );

          layout.setVerticalGroup(
                  layout.createSequentialGroup()
                  .addGroup(
                  layout.createParallelGroup().addComponent(buttonMnozenia).addComponent(buttonDzielenia).addComponent(buttonOdejmowania)
                  ).addComponent(buttonRownania, GroupLayout.PREFERRED_SIZE,100,GroupLayout.PREFERRED_SIZE)
                          .addGroup(
                          layout.createParallelGroup().addComponent(button7).addComponent(button8).addComponent(button9)
                          )
                          .addGroup(
                          layout.createParallelGroup().addComponent(button4).addComponent(button5).addComponent(button6)
                            )
                          .addGroup(
                          layout.createParallelGroup().addComponent(button1).addComponent(button2).addComponent(button3)
                            )
                          .addGroup(
                                  layout.createParallelGroup().addComponent(button0).addComponent(buttonUsuwania)
                             )

          );

        this.getContentPane().add(panelButton, BorderLayout.SOUTH);
        //panel1.setLayout(new GridLayout(3, 3));
        this.getContentPane().add(wyswietlacz, BorderLayout.NORTH);
        this.setDefaultCloseOperation(3);
        pack();
    }
    private final JPanel panelButton = new JPanel();
    private final JButton button1 = new JButton("1");
    private final JButton button2 = new JButton("2");
    private final JButton button3 = new JButton("3");
    private final JButton button4 = new JButton("4");
    private final JButton button5 = new JButton("5");
    private final JButton button6 = new JButton("6");
    private final JButton button7 = new JButton("7");
    private final JButton button8 = new JButton("8");
    private final JButton button9 = new JButton("9");
    private final JButton button0 = new JButton("0");
    private final JButton buttonMnozenia = new JButton("*");
    private final JButton buttonDzielenia = new JButton("/");
    private final JButton buttonDodawania = new JButton("+");
    private final JButton buttonOdejmowania = new JButton("-");
    private final JButton buttonUsuwania = new JButton("DEL");
    private final JButton buttonKasowania = new JButton("CE");
    private final JButton buttonRownania = new JButton("=");
    private final JButton buttonOtwarciaNawiasu = new JButton("(");
    private final JButton buttonZamknieciaNawiasu = new JButton(")");
    private JTextField wyswietlacz = new JTextField(3);
    private JPanel panel1 = new JPanel();
    public static void main(String[] args) {
        new Kalkulator().setVisible(true);
    }

}
edytowany 1x, ostatnio: Xercis, 2019-07-15 20:07

Pozostało 580 znaków

2019-07-15 21:30
1

użyj GridBagLayout
https://docs.oracle.com/javas[...]al/uiswing/layout/visual.html


Każdy programista przybywający z innego miasta jest fachowcem.

Pozostało 580 znaków

2019-07-16 11:52
0

O to mi chodziło, dzięki za pomoc :)

Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0