Professional Documents
Culture Documents
En esta practica usamos nuevas cosas, como lo son las interfaces gráficas, a su
vez utilizamos algunas otras funciones o métodos anteriores pero ahora enfocado
en las ventanas gráficas, usamos botones, cajas de texto, etiquetas, combobox,
también usamos la librería JOptionPane para desplegar el mensaje con los datos
deseados, el programa esta hecho principalmente para calucular el predial de un
terreno.
Main JForm
import javax.swing.JOptionPane;
/**
*/
public CalTerreno() {
initComponents();
/**
* This method is called from within the constructor to initialize the form.
* WARNING: Do NOT modify this code. The content of this method is always
*/
@SuppressWarnings("unchecked")
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
lblAncho.setText("ANCHO:");
lblLargo.setText("LARGO:");
txtAncho.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
txtAncho.addActionListener(new java.awt.event.ActionListener() {
txtAnchoActionPerformed(evt);
});
txtLargo.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
txtLargo.addActionListener(new java.awt.event.ActionListener() {
});
cbPrecios.addActionListener(new java.awt.event.ActionListener() {
cbPreciosActionPerformed(evt);
});
btnCalcular.setText("Calcular");
btnCalcular.addActionListener(new java.awt.event.ActionListener() {
btnCalcularActionPerformed(evt);
});
lblAntigüedad.setText("ANTIGÜEDAD:");
lblDatosConstruccion.setText("DATOS DE CONSTRUCCIÓN");
txtAntigüedad.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
txtConstruccion.setHorizontalAlignment(javax.swing.JTextField.RIGHT);
lblAños.setText("AÑOS.");
lblMAncho.setText("m.");
lblMLargo.setText("m.");
lblMConstruccion.setText("m².");
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(lblDatosTerreno)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(lblDatosConstruccion)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblAncho)
.addComponent(lblLargo)
.addComponent(lblPrecio))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(cbPrecios, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(lblMAncho))
.addGroup(jPanel1Layout.createSequentialGroup()
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(lblMLargo)))
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING,
false)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(lblConstruccion)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(txtConstruccion, javax.swing.GroupLayout.PREFERRED_SIZE,
100, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(lblAntigüedad)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED,
javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(lblAños)
.addComponent(lblMConstruccion))))
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING,
jPanel1Layout.createSequentialGroup()
.addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblDatosTerreno)
.addComponent(lblDatosConstruccion))
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblAncho)
.addComponent(txtAncho, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblAntigüedad)
.addComponent(txtAntigüedad, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblAños)
.addComponent(lblMAncho))
.addComponent(lblLargo)
.addComponent(txtLargo, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblConstruccion)
.addComponent(txtConstruccion, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(lblMLargo)
.addComponent(lblMConstruccion))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 25,
Short.MAX_VALUE)
.addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(lblPrecio)
.addComponent(cbPrecios, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
);
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(28, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(24, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
terreno.precio = dinero;
terreno.ancho = Double.parseDouble(txtAncho.getText());
terreno.largo = Double.parseDouble(txtLargo.getText());
casa.antigüedad = Double.parseDouble(txtAntigüedad.getText());
casa.metrosCuadrados = Double.parseDouble(txtConstruccion.getText());
double total;
/**
*/
//<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
/* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel.
*/
try {
if ("Nimbus".equals(info.getName())) {
javax.swing.UIManager.setLookAndFeel(info.getClassName());
break;
}
} catch (ClassNotFoundException ex) {
java.util.logging.Logger.getLogger(CalTerreno.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
java.util.logging.Logger.getLogger(CalTerreno.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
java.util.logging.Logger.getLogger(CalTerreno.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
java.util.logging.Logger.getLogger(CalTerreno.class.getName()).log(java.util.logging.Level.SEVERE,
null, ex);
//</editor-fold>
java.awt.EventQueue.invokeLater(new Runnable() {
new CalTerreno().setVisible(true);
});
Terreno terreno;
Construccion casa;
}
Clase Terreno
public class Terreno {
double area;
largo = this.largo;
ancho = this.ancho;
area = largo*ancho;
return area;
double valor = 0;
switch(this.precio){
return valor;
return valor;
return valor;
return valor;
}
double catastral;
return catastral;
Clase Construcción
public class Construccion {
metrosCuadrados = this.metrosCuadrados;
antigüedad = this.antigüedad;
double descuento;
double valorConstruccion;
if(descuento>40){
return valorConstruccion;
}else{
return valorConstruccion;
}