[SWING] Custom JComponent maken. Waar te beginnen

Pagina: 1
Acties:

  • PhoneTech
  • Registratie: Mei 2000
  • Laatst online: 09:06
Ik ben momenteel druk in de weer met swing, en wil een reusable component maken.
Dit component moet gebaseeerd zijn op een JTextField maar dan met een knop aan de rechterkant waar een actie aangehangen kan worden

dus zo:
code:
1
2
3
----------------------------------
| JTextField  || JButton |  
----------------------------------

Een manier is, is om een panel te maken waar een JTextField en een JButton in zitten, en dat panel dan weer in het formulier stoppen.

Ik zou dus graag een generiek component maken, wat ik direct in een formulier kan stoppen.

Component zou dus van JComponent moeten extenden neem ik aan.

Veel voorbeelden op het internet gaat over het painten van een plaatje en wat laten bewegen in de paintComponent method. Maar ik kan geen resources vinden waar uitgelegd worden hoe ik dit moet doen.

Kunnen jullie me alvast op weg helpen?

[ Voor 8% gewijzigd door PhoneTech op 18-01-2005 17:25 ]


  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
Zonder speciale klasse zou je dat ongeveer zo doen:
Java:
1
2
3
4
5
6
7
JPanel panel = new JPanel(new FlowLayout());

JTextField textField = new JTextField("Text field", 15);
JButton button = new JButton("Button");

panel.add(textField);
panel.add(button);

Nu wil je deze functionaliteit in een herbruikbaar component zetten. Dit kun je doen door JPanel te extenden en daarbij in de constructor de sub-componenten toe te voegen.

Simpel voorbeeld:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
public class BlaatPanel extends JPanel
{
    public BlaatPanel()
    {
        super(new FlowLayout());
        
        JTextField textField = new JTextField("Text field", 15);
        JButton button = new JButton("Button");

        add(textField);
        add(button);
    }
}