1
Aprender a programar desde cero / Programar Boton Guardar en Java
« en: 27 de Junio 2015, 01:33 »
Buenas, tengo una duda me piden crear un cuadro de diálogo con 1 combobox, 4 jtextfield y el boton Guardar, ya cree mi jdialogo con mis datos predeterminados de suavidad,tamaño de hojas, precio etc. Pero mi problema es que no se como programar el boton Guardar, es decir que al modificar los datos del modelo de mi papel estos se guarden. ahi dejo mis codigos trabajados. Uso eclipse Kepler
![](http://i59.tinypic.com/2wemexe.png)
![](http://i59.tinypic.com/2wemexe.png)
Código: [Seleccionar]
package trabajo;
import javax.swing.JDialog;
import javax.swing.JPanel;
import javax.swing.JTextField;
import javax.swing.JLabel;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.UIManager;
import javax.swing.border.EmptyBorder;
import javax.swing.DefaultComboBoxModel;
import java.awt.BorderLayout;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
@SuppressWarnings("unused")
public class modificarmodelo extends JDialog implements ActionListener {
/**
*
*/
private static final long serialVersionUID = 1L;
private final JPanel contentPanel = new JPanel();
private JLabel lblModelo;
private JLabel lblSuavidad;
private JLabel lblNumerodehojas;
private JLabel lblTamañodehoja;
private JLabel lblPrecio;
private JTextField txtSuavidad;
private JTextField txtNumerodehojas;
private JTextField txtTamañodehoja;
private JTextField txtPrecio;
private JButton btnCerrar;
public static String modelo0,modelo1,modelo2,modelo3,modelo4,suavidad0,suavidad1,suavidad2,suavidad3,suavidad4,tamaño0,tamaño1,tamaño2,tamaño3,tamaño4;
public static int hojas0,hojas1,hojas2,hojas3,hojas4;
public static double precio0,precio1,precio2,precio3,precio4;
private JButton btnGrabar;
@SuppressWarnings("rawtypes")
private JComboBox cboModelo;
/**
* Launch the application.
*/
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Throwable e) {
e.printStackTrace();
}
try {
modificarmodelo dialog = new modificarmodelo();
dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
dialog.setVisible(true);
}
catch (Exception e) {
e.printStackTrace();
}
}
/**
* Create the dialog.
*/
@SuppressWarnings({ "rawtypes", "unchecked" })
public modificarmodelo() {
setModal(true);
setResizable(false);
setTitle("Modificar modelo");
setBounds(100, 100, 450, 195);
getContentPane().setLayout(new BorderLayout());
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
getContentPane().add(contentPanel, BorderLayout.CENTER);
contentPanel.setLayout(null);
lblModelo = new JLabel("Modelo");
lblModelo.setBounds(10, 11, 46, 14);
contentPanel.add(lblModelo);
lblSuavidad = new JLabel("Suavidad");
lblSuavidad.setBounds(10, 36, 112, 14);
contentPanel.add(lblSuavidad);
lblNumerodehojas = new JLabel("N\u00FAmero de hojas por rollo");
lblNumerodehojas.setBounds(10, 61, 132, 14);
contentPanel.add(lblNumerodehojas);
lblTamañodehoja = new JLabel("Tama\u00F1o de hoja");
lblTamañodehoja.setBounds(10, 86, 112, 14);
contentPanel.add(lblTamañodehoja);
lblPrecio = new JLabel("Precio (S/.)");
lblPrecio.setBounds(10, 111, 79, 14);
contentPanel.add(lblPrecio);
txtSuavidad = new JTextField();
txtSuavidad.setColumns(10);
txtSuavidad.setBounds(152, 36, 99, 20);
contentPanel.add(txtSuavidad);
txtNumerodehojas = new JTextField();
txtNumerodehojas.setColumns(10);
txtNumerodehojas.setBounds(152, 61, 99, 20);
contentPanel.add(txtNumerodehojas);
txtTamañodehoja = new JTextField();
txtTamañodehoja.setColumns(10);
txtTamañodehoja.setBounds(152, 86, 99, 20);
contentPanel.add(txtTamañodehoja);
txtPrecio = new JTextField();
txtPrecio.setColumns(10);
txtPrecio.setBounds(152, 111, 99, 20);
contentPanel.add(txtPrecio);
btnCerrar = new JButton("Cerrar");
btnCerrar.addActionListener(this);
btnCerrar.setBounds(345, 7, 89, 23);
contentPanel.add(btnCerrar);
btnGrabar = new JButton("Grabar");
btnGrabar.addActionListener(this);
btnGrabar.setBounds(345, 32, 89, 23);
contentPanel.add(btnGrabar);
cboModelo = new JComboBox();
cboModelo.setModel(new DefaultComboBoxModel(new String[] {"Confort", "Secreto", "Carm\u00EDn", "P\u00E9talo", "Panda"}));
cboModelo.addActionListener(this);
cboModelo.setSelectedIndex(0);
cboModelo.setBounds(152, 8, 99, 20);
contentPanel.add(cboModelo);
}
public void actionPerformed(ActionEvent e) {
if (e.getSource() == cboModelo) {
actionPerformedCboModelo(e);
}
if (e.getSource() == btnGrabar) {
actionPerformedBtnGrabar(e);
}
if (e.getSource() == btnCerrar) {
actionPerformedBtnCerrar(e);
}
}
protected void actionPerformedBtnCerrar(ActionEvent e) {
dispose();
}
protected void actionPerformedBtnGrabar(ActionEvent e) {
}
protected void actionPerformedCboModelo(ActionEvent e) {
int modeloB;
modeloB = getModeloN();
MostrarDatos(modeloB);
}
//entrada
int getModeloN(){
return cboModelo.getSelectedIndex();
}
//metodos
void MostrarDatos(int modelo){
switch (modelo){
case 0:
suavidad0 = "Poco suave";
hojas0 = 300;
tamaño0 = "10 cm x 10 cm";
precio0 = 2.0;
txtSuavidad.setText(suavidad0);
txtNumerodehojas.setText(String.valueOf(hojas0));
txtTamañodehoja.setText(tamaño0);
txtPrecio.setText(String.valueOf(precio0));
break;
case 1:
suavidad1 = "Suave";
hojas1 = 500;
tamaño1 = "10.2 cm x 10.2 cm";
precio1 = 2.8;
txtSuavidad.setText(suavidad1);
txtNumerodehojas.setText(String.valueOf(hojas1));
txtTamañodehoja.setText(tamaño1);
txtPrecio.setText(String.valueOf(precio1));
break;
case 2:
suavidad2 = "Muy suave";
hojas2 = 600;
tamaño2 = "10.5 cm x 11.0 cm";
precio2 = 3.2;
txtSuavidad.setText(suavidad2);
txtNumerodehojas.setText(String.valueOf(hojas2));
txtTamañodehoja.setText(tamaño2);
txtPrecio.setText(String.valueOf(precio2));
break;
case 3:
suavidad3 = "Super suave";
hojas3 = 600;
tamaño3 = "10.5 cm x 11.0 cm";
precio3 = 4.0;
txtSuavidad.setText(suavidad3);
txtNumerodehojas.setText(String.valueOf(hojas3));
txtTamañodehoja.setText(tamaño3);
txtPrecio.setText(String.valueOf(precio3));
break;
default:
suavidad4 = "Super suave";
hojas4 = 500;
tamaño4 = "11.0 cm x 11.0 cm";
precio4 = 3.6;
txtSuavidad.setText(suavidad4);
txtSuavidad.setText(suavidad4);
txtNumerodehojas.setText(String.valueOf(hojas4));
txtTamañodehoja.setText(tamaño4);
txtPrecio.setText(String.valueOf(precio4));
break;
}
}
}