package hu.nagyjanos; import javax.swing.BoxLayout; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.border.EmptyBorder; /** * Az InputPanel egy Swing komponens, ami * alkalmas valamilyen érték bekérésére. * A felirat és a bevitelimező egymás * mellett helyezkedik el. * * @author Nagy János * @version 1.0 * @since 2022-12-04 */ public class InputPanel extends JPanel { private JLabel label; private JTextField field; /** * Példány létrehozása az InputPanelből */ public InputPanel() { this.label = new JLabel("InputPanel"); this.field = new JTextField(); this.setLayout(new BoxLayout(this, BoxLayout.LINE_AXIS)); this.setBorder(new EmptyBorder(5, 10, 5, 10)); this.label.setBorder(new EmptyBorder(0, 0, 0, 10)); this.addComponent(); } private void addComponent() { this.add(label); this.add(field); } /** * Példány létrehozása felirat beállításával * @param label A panel feliratának szövege */ public InputPanel(JLabel label) { this.label = label; } /** * A panel feliratának beállítása * @param text A felirat szövege */ public void setText(String text) { this.label.setText(text); } /** * A panel feliratnának lekérdezése * @return Visszatér a panel feliratával */ public String getText() { return this.label.getText(); } /** * A panel értékének beállítása * @param value A penel értéke */ public void setValue(String value) { this.field.setText(value); } /** * A panel értékének lekérdezése * @return Visszatér a panel értékével */ public String getValue() { return this.field.getText(); } }