import javax.swing.JTextField;
import javax.swing.JFrame;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Component;
import javax.swing.JButton;

public class MyFrame extends JFrame implements ActionListener
{
    private JTextField text;
    private GridBagLayout aLayout;
    private GridBagConstraints aConstraint;

    public MyFrame()
    {
        setSize(300,200);
        setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
	  aConstraint = new GridBagConstraints();
        aLayout = new GridBagLayout();
        setLayout(aLayout);     // Calling method of super class.
        text = new JTextField("default");
        text.addActionListener(this);
        addWidget(text,0,0,1,1);
        setVisible(true);
    }

    public void addWidget (Component widget, int x, int y, int w, int h)
    {
        aConstraint.gridx = x;
        aConstraint.gridy = y;
        aConstraint.gridwidth = w;
        aConstraint.gridheight = h;
        aLayout.setConstraints (widget, aConstraint);
        add(widget);        // Calling method of super class.
    }
    public void actionPerformed(ActionEvent e)
    {
        setTitle("enter");
    }
}