Tartalomjegyzék

< Java komponensek

Java komponensek - Swing inputpanel

Bevezetés

Swing programozói könyvtár használatával szeretnénk beviteli mezőt és hozzátartozó feliratot szeretnénk megjeleníteni.

A feladat mintaprojektje:

Ehhez hasonló mikorprojekt:

InputPanel

src/hu/szit/inputpanel/InputPanel.java
package hu.szit.inputpanel;
 
import java.awt.Dimension;
 
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
 
public class InputPanel extends JPanel {
 
    JLabel label;
    JTextField field;
    public InputPanel() {
        initComponent();
        setupComponents();
        addComponent();
    }
    private void initComponent() {
        this.label = new JLabel();
        this.field = new JTextField();
    }
    private void setupComponents() {
        this.field.setPreferredSize(new Dimension(100, 25));
    }
    private void addComponent() {
        this.add(this.label);
        this.add(this.field);
    }
    public void setText(String text) {
        this.label.setText(text);
    }
    public String getText() {
        return this.label.getText();
    }
    public void setValue(String text) {
        this.field.setText(text);
    }
    public String getValue() {
        return this.field.getText();
    }
}

Az InputPanel használata

App.java
public class App {
    public static void main(String[] args) throws Exception {
        new Mainwindow();
    }
}
Mainwindow.java
import java.awt.FlowLayout;
 
import javax.swing.JFrame;
 
import hu.szit.inputpanel.InputPanel;
 
public class Mainwindow extends JFrame {
    InputPanel inputPanel;
 
    public Mainwindow() {
        this.inputPanel = new InputPanel();
        this.inputPanel.setText("Minta");
        this.inputPanel.setValue("érték");
 
        this.setLayout(new FlowLayout());
        this.add(this.inputPanel);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        this.setSize(400, 300);
        this.setVisible(true);      
    }
 
}