#java #swing #decrement
#java #качать #уменьшение
Вопрос:
Я пытаюсь создать систему хранения, когда пользователь вводит номер элемента, который он хочет, чтобы он вычитался из общего количества доступных. Как бы мне это сделать? Я новичок, поэтому я не слишком уверен
Для моего кода ниже пытаюсь получить ввод sofa и минус его из общего
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import java.text.DecimalFormat;
import java.util.Arrays;
/**
RoutinePanel class
*/
public class RoutinePanel extends JPanel
{
// Named constants for charges
private final double SOFA_CHARGE = 599.99;
private final double COMPUTER_DESK_CHARGE = 129.99;
private final double COFFEE_TABLE_CHARGE = 40.0;
private final double ARMCHAIR_CHARGE = 229.99;
private final double TV_STAND_CHARGE = 37.0;
private final double CUSHION_CHARGE = 8.0;
private final double BED_CHARGE = 145.0;
private final double MATRESS_CHARGE = 299.0;
private final double DUVET_CHARGE = 24.99;
private final double PILLOW_CHARGE = 9.99;
int SofaTotal = 999;
TextField ComputerDesk; // Check box for lube job
JTextField Armchair; // Check box for radiator flush
JTextField CoffeeTable; // Check box for transmission flush
JTextField TvStand; // Check box for inspection
JTextField Cushion; // Check box for muffler replacement
JTextField Bed; // Check box for tire rotation
JTextField Matress ;
JTextField Duvet;
JTextField Pillow;
JLabel SofaLbl;
JTextField Sofa;
private JLabel ArmchairLbl;
private JLabel ComputerDeskLbl;
private JLabel CoffeeTableLbl;
private JLabel TvStandLbl;
private JLabel CushionLbl;
private JLabel BedLbl;
private JLabel MatressLbl;
private JLabel DuvetLbl;
private JLabel PillowLbl;
private Color Colour;
private JButton b;
/**
Constructor
*/
public RoutinePanel()
{
// Create a DecimalFormat object.
DecimalFormat dollar = new DecimalFormat("#,##0.00");
Sofa = new JTextField("0");
SofaLbl = new JLabel("Sofa");
ArmchairLbl = new JLabel("Armchair");
Armchair = new JTextField("0");
ComputerDesk = new TextField("0");
ComputerDeskLbl = new JLabel("Computer Desk");
CoffeeTable = new JTextField("0");
CoffeeTableLbl = new JLabel("Coffee Table");
TvStand = new JTextField ("0");
TvStandLbl = new JLabel ("TV Stand");
Cushion = new JTextField ("0");
CushionLbl = new JLabel ("Cushion");
Bed = new JTextField ("0");
BedLbl = new JLabel("0");
Matress = new JTextField("0");
MatressLbl = new JLabel("Matress");
Duvet = new JTextField("0");
DuvetLbl = new JLabel("Duvet");
Pillow = new JTextField("0");
PillowLbl = new JLabel("Pillow");
b = new JButton("Choose a Colour");
b.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent event)
{ Colour = JColorChooser.showDialog(null, "Pick your Colour", Colour);
if (Colour==null)
Colour=(Colour.WHITE);
}
}
);
// Create a GridLayout manager.
setLayout(new GridLayout(18, 3));
// Create a border.
setBorder(BorderFactory.createTitledBorder("Routine Services"));
add(SofaLbl);
add(Sofa);
add(b);
add(ArmchairLbl);
add(Armchair);
add(ComputerDeskLbl);
add(ComputerDesk);
add(CoffeeTableLbl);
add(CoffeeTable);
add(TvStandLbl);
add(TvStand);
add(CushionLbl);
add(Cushion);
add(BedLbl);
add(Bed);
add(MatressLbl);
add(Matress);
add(DuvetLbl);
add(Duvet);
add(PillowLbl);
add(Pillow);
}
Комментарии:
1. ChairLeft=ChairTotal-ChairEnteredByUser;
2. Пожалуйста, покажите код. Пожалуйста, задайте более полный и конкретный вопрос.
3. Добавлен код для очистки abit @HovercraftFullOfEels
Ответ №1:
Это довольно просто.Вам просто нужно вычесть sofa, запрошенный пользователем, из общего sofa и отобразить его в ярлыке sofa!
int sofaRequested=Integer.parseInt(Sofa.getText());
int sofaLeft=SofaTotal-sofaRequested;
SofaLbl.setText("The total number of Sofa left in stock is " sofaLeft);
Комментарии:
1. Это прекрасно описано, и теперь я понимаю, большое спасибо! Во-первых, оно не вычитается из общего числа, но отображает общее количество в метке
2. @user3403781-Что вы ввели в текстовое поле Sofa?
3. Я ввел 10, но ничего не произошло
4. Куда вы добавили этот фрагмент кода, который я написал?
5. Вам нужно добавить кнопку для получения выходных данных! Или же поместите его в JButton b и введите в текстовое поле и нажмите JButton b; Вы получите желаемый результат! Кроме того, вы можете написать событие actionPerformed для текстового поля Sofa, например JButton b, и ввести в него мой ответ. Это приведет к правильному выводу!