Diferencia entre revisiones de «Usuario:ManuelRomero/javasintaxis»

De WikiEducator
Saltar a: navegación, buscar
Línea 1: Línea 1:
 +
{{MiTitulo | Introducción a la programación con Java}}
 +
 +
[[Archivo:Java-logo.jpg|200px]]
 +
== Documentación inicial ==
 +
 
=Java=
 
=Java=
[[Archivo:Java-logo.jpg]]
+
 
  
 
==Entorno de desarrollo Java==
 
==Entorno de desarrollo Java==

Revisión de 07:26 11 feb 2012


200px

Documentación inicial

Java

Entorno de desarrollo Java

Referencias online

JDK

JRE

Sintaxis básica

Eclipse

Ejemplo 1

Entorno gráfico swingx

Layout GridBagLayout

r.fill=GridBagConstraints.HORIZONTAL;
r.anchor=GridBagConstraints.WEST;
r.weightx=10;
r.weighty=10;
r.ipady =50;
r.insets= new Insets(10,5,2,2);
Box b= new Box(1);
FlowLayout bL = new FlowLayout();
		setLayout (bL);
p.setLayout(l);
import javax.swing.*;
import java.awt.*;
import javax.swing.border.*;
public class MarcoGB extends JFrame{
 
	GridBagConstraints r = new GridBagConstraints();
	GridBagLayout l= new GridBagLayout();
	JPanel p = new JPanel();
	String[] etiquetas=  {"Nombre","Apellido","Dirección","Código postal","Localidad","Provincia","Fecha Nacimiento","Correo","Sexo","Estudios","Otros Datos"};
	String[] sexo={"Hombre","Mujer","No quiero aportar"};
	public MarcoGB(){
 
		//Valores generales para todas las colocaciones 
 
		r.fill=GridBagConstraints.HORIZONTAL;
		r.anchor=GridBagConstraints.WEST;
		//r.weightx=10;
		//r.weighty=10;
		//r.ipady =50;
		r.insets= new Insets(10,5,2,2);
 
		Box b= new Box(1);
        FlowLayout bL = new FlowLayout();
		setLayout (bL);
		p.setLayout(l);
		//Colocamos los label
		JLabel LNombre = new JLabel("Nombre");
		AnadirComponente(LNombre,0,0,1,1);
 
		JLabel LApellido = new JLabel("Apellido");
		AnadirComponente(LApellido,3,0,1,1);
 
		JLabel LDireccion = new JLabel("Direccion");
		AnadirComponente(LDireccion,0,1,1,1);
 
		JLabel LCodPostal= new JLabel("Codigo Postal");
		AnadirComponente(LCodPostal,3,1,1,1);
 
		JLabel LLocalidad = new JLabel("Localidad");
		AnadirComponente(LLocalidad,0,2,1,1);
 
		JLabel LProvincia = new JLabel("Provincia");
		AnadirComponente(LProvincia,3,2,1,1);
 
		JLabel LFNac= new JLabel("Fecha de nacimiento");
		AnadirComponente(LFNac,0,3,2,1);
 
		JLabel LCorreo= new JLabel("Correo");
		AnadirComponente(LCorreo,3,3,1,1);
 
		JLabel LSexo= new JLabel("Sexo");
		AnadirComponente(LSexo,0,4,1,1);
 
		JLabel LEstudios = new JLabel("Estudios");
		AnadirComponente(LEstudios,3,5,1,1);
 
		JLabel LODatos = new JLabel("Otros Datos de interés");
		AnadirComponente(LODatos,0,5,2,1);
 
 
		//Ahora colocamos las cajas de texto
 
		JTextField TNombre = new JTextField(10);
	    //JFormattedTextField.
		AnadirComponente(TNombre,1,0,2,1);
		JTextField TApellido = new JTextField(10);
 
		AnadirComponente(TApellido,4,0,2,1);
 
		JTextField TDireccion = new JTextField();
		AnadirComponente(TDireccion,1,1,2,1);
		JTextField TCodPostal = new JTextField(5);
		AnadirComponente(TCodPostal,4 ,1,1,1);
 
 
		JTextField TLocalidad = new JTextField();
		AnadirComponente(TLocalidad,1,2,2,1);
 
		JTextField TProvincia = new JTextField(10);
		AnadirComponente(TProvincia,4,2,1,1);
		JTextField TFNac = new JTextField();
		AnadirComponente(TFNac,2,3,1,1);
		JTextField TCorreo = new JTextField(10);
		AnadirComponente(TCorreo,4,3,1,1);
		JComboBox TSexo = new JComboBox(sexo);
		AnadirComponente(TSexo,2,4,1,1);
		JTextField TEstudios = new JTextField();
		AnadirComponente(TEstudios,4,4,1,1);
 
		JTextArea TODatos = new JTextArea(10,3);
		TODatos.setBorder(BorderFactory.createLineBorder(Color.BLUE));
		AnadirComponente(TODatos,0,6,3,1);
 
		JButton BAceptar = new JButton("Aceptar");
		AnadirComponente(BAceptar,3,10,1,1);
		JButton BCancelar= new JButton("Cancelar");
		AnadirComponente(BCancelar,4,10,1,1);
	//Poner un borde con un título
		TitledBorder titulo =BorderFactory.createTitledBorder("Datos Personales");
		p.setBorder(titulo);
		//jComp8.setBorder(title);
 
 
		add(p);
   		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setSize(500,500);//ancho y alto
		setVisible(true);	
 
 
		//
	}
 
	private void AnadirComponente(Component c, int columna,
			            int fila, int anchura, int altura){
 
		r.gridx=columna;
		r.gridy=fila;
		r.gridwidth = anchura;
		r.gridheight=altura;
		l.setConstraints(c,r);
		p.add(c);
	}
 
	/**
	 * @param args
	 */
 
		// TODO Auto-generated method stub
		 public static void main(String[] args) {
		        SwingUtilities.invokeLater(new Runnable() {
		            public void run() {
		            	new MarcoGB();
		            }
		        });
		        SwingUtilities.invokeLater(new Runnable() {
		            public void run() {
		            	new MarcoGB();
		            }
		        });
		        SwingUtilities.invokeLater(new Runnable() {
		            public void run() {
		            	new MarcoGB();
		            }
		        });
 
}
}

Eventos

import javax.swing.*;
 
import concesionario.Cliente;
 
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import java.awt.Event.*;
import java.sql.*;
 
public class ICliente extends JFrame{
 
 
	//	Definición de objetos gráficos para el interfaz
	JLabel lNum = new JLabel ("Número");
	JTextField  tNum = new JTextField(5);
	JLabel lApellido = new JLabel("Apellido");
	JTextField tApellido = new JTextField (5);
	JLabel lNombre = new JLabel("Nombre");
	JTextField tNombre = new JTextField (5);
	JButton bPrimero = new JButton("primero");
	JButton bAnterior = new JButton("anterior");
	JButton bSiguiente= new JButton("siguiente");
	JButton bUltimo = new JButton("ultimo");
//Paneles contenedores además del contenedor principal que es el frame
	JPanel pDatos = new JPanel();
	JPanel pBotones = new JPanel();
//Layout para distribución de objetos en el contenedor	
	FlowLayout fL = new FlowLayout();
	BorderLayout bL= new BorderLayout();
	BoxLayout bxL = new BoxLayout(this.getContentPane(),BoxLayout.LINE_AXIS);
 
//para poderme comunciar con otras clases	
	Cliente cliente = new Cliente();
    ResultSet consulta; //Para trabajar con el resultado de una consulta concreta
	static Conexion conexion; //static para poder ser usada en el main que es static
 
 
 
 
 public ICliente(){
	//Ponemos los layout
	 pDatos.setLayout(fL);
	 pBotones.setLayout(fL);
     setLayout(bL);
 
    //Añadimos los objetos a los contenedores
     //primero los contenidos a los paneles
     pBotones.add(bPrimero);
     pBotones.add(bSiguiente);
     pBotones.add(bAnterior);
     pBotones.add(bUltimo);
 
     pDatos.add(lNum);
     pDatos.add(tNum);
     pDatos.add(lNombre);
     pDatos.add(tNombre);
     pDatos.add(lApellido);
     pDatos.add(tApellido);
 
 
     //Luego los paneles al JFrame
     add(pDatos,bL.PAGE_START);
     add(pBotones,bL.PAGE_END);
 
 
     //Colocamos y visualizamos el JFrame
     setBounds(100,100,600,200);
     setTitle("Recorrido de la tabla Clientes");
     setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     setVisible(true);
 
     //Cremos un objeto escuchador de la interfaz ActionListener
     ManejadorEventos elEscuchador= new ManejadorEventos();
 
     //Agregamos este objeto a los botones desde los que quieremos recoger el evento
     bPrimero.addActionListener(elEscuchador); 
     bSiguiente.addActionListener(elEscuchador);
     bAnterior.addActionListener(elEscuchador);
     bUltimo.addActionListener(elEscuchador);
 
     //Realizamos la consulta para después moverme sobre ella (avanzar o retroceder).
     try{
     consulta  =conexion.hacerConsulta("Select * from clientes");
     }catch(SQLException ex){
    	 System.out.println("Error "+ex.getMessage());
     }
 
 }
 public void cargaDatos(Cliente c){
	 tNombre.setText(c.getNombre());
	 tApellido.setText(c.getApellido());
	 tNum.setText(c.getNumero().toString());
 
 }
 
 private class ManejadorEventos implements ActionListener{
 		public void actionPerformed(ActionEvent e) {
 			try{
				if (e.getSource()== bPrimero){
		    		   if (consulta.isFirst())
		    			    JOptionPane.showMessageDialog(null,"Ya es el primer registro");
		    		   else
		    			   consulta.first();
		    	   }
				if (e.getSource()== bSiguiente){
		    		   consulta.next();
		    	   }
				if (e.getSource()== bAnterior){
		    		   consulta.previous();
		    	   }
				if (e.getSource()== bUltimo){
		    		   if (consulta.isLast())
		    			    JOptionPane.showMessageDialog(null,"Ya es el último registro");
		    		   else
		    			   consulta.last();
		    	   }
				   cliente.setDatos(consulta);
				   cargaDatos(cliente);
 			}catch(SQLException ex){
 				JOptionPane.showMessageDialog(null,"La consulta no ha devuelto filas");
 			}
 
		}
  }
 
 
public static void main(String []s){
	 try{
		 conexion = new Conexion();
	 }catch(SQLException e){
		 JOptionPane.showMessageDialog(null,"Error en conexion en bd "+e.getMessage());
	 }catch (ClassNotFoundException e){
		 JOptionPane.showMessageDialog(null,"Error en BD" +e.getMessage());
	 }
       ICliente elCliente = new ICliente();
 }
}//End class