Tamaño de JTextField utilizando showMessageDialog
Hola,
Estoy programando una interfaz para añadir datos a
una BBDD. Quiero hacer un formulario sencillo donde los JtextField
tengan el tamaño del campo de datos (Que al JTextField de un campo de 3
caracteres solo le quepa 3 caracteres).
Creo mi Dialog window de esta manera:
final JComponent[] inputs = new JComponent[] {
new JLabel("City Name"),
newCityName_,
new JLabel("City Code"),
newCityCode_,
new JLabel("District Code"),
newCityDistrict_,
new JLabel("Population"),
newCityPopulation_
};
JOptionPane.showMessageDialog(null, inputs, "Add City", JOptionPane.PLAIN_MESSAGE);
En este código las variables son todas JTextField.
Con eso obtengo campos de igual tamaño cuya longitud depende del tamaño de la ventana.
Intente jugar con los parámetros de JTextField:
- el constructor JtextField(int size)
- los metodos setColumns, setPreferedSize y setSize
Pero todo eso no cambia el tamaño de los campos.
También he creado la clase siguiente para engañar al showMessageDialog pero sin resultado:
class SizedTextField extends JTextField
{
Dimension d;
public SizedTextField (int cWidth)
{
d = new Dimension (cWidth * 16, 21);
}
public Dimension getPreferedSize () { return d; }
public Dimension getMaximumSize () { return d; }
public Dimension getMinimumSize () { return d; }
}
¿Tendría una idea?
Gracias.
Estoy programando una interfaz para añadir datos a
una BBDD. Quiero hacer un formulario sencillo donde los JtextField
tengan el tamaño del campo de datos (Que al JTextField de un campo de 3
caracteres solo le quepa 3 caracteres).
Creo mi Dialog window de esta manera:
final JComponent[] inputs = new JComponent[] {
new JLabel("City Name"),
newCityName_,
new JLabel("City Code"),
newCityCode_,
new JLabel("District Code"),
newCityDistrict_,
new JLabel("Population"),
newCityPopulation_
};
JOptionPane.showMessageDialog(null, inputs, "Add City", JOptionPane.PLAIN_MESSAGE);
En este código las variables son todas JTextField.
Con eso obtengo campos de igual tamaño cuya longitud depende del tamaño de la ventana.
Intente jugar con los parámetros de JTextField:
- el constructor JtextField(int size)
- los metodos setColumns, setPreferedSize y setSize
Pero todo eso no cambia el tamaño de los campos.
También he creado la clase siguiente para engañar al showMessageDialog pero sin resultado:
class SizedTextField extends JTextField
{
Dimension d;
public SizedTextField (int cWidth)
{
d = new Dimension (cWidth * 16, 21);
}
public Dimension getPreferedSize () { return d; }
public Dimension getMaximumSize () { return d; }
public Dimension getMinimumSize () { return d; }
}
¿Tendría una idea?
Gracias.
1 Respuesta
Respuesta
1