P. 1
Trucos JAVA

Trucos JAVA

|Views: 100|Likes:
Publicado porRoberth Morales

More info:

Published by: Roberth Morales on Apr 27, 2013
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as DOCX, PDF, TXT or read online from Scribd
See more
See less

02/02/2014

pdf

text

original

Agregar titulo a JTable/Tabla en Netbeans visualmente

Bueno espero le sirva a alguien mas: 1. Agregar el JTable a tu form (obvio). 2. Click derecho sobre el JTable y seleccionar "Enclose in" -> Panel. 3. En el navegador de objetos seleccione el JPanel que contiene ahora a su jScrollPane/JTable. 4. En la ventana de propiedades editar la propiedad "border" . 5. En la ventana que parecio escoger "Titled Border", en la misma ventana llenar la propiedad "Tittle" con el titulo que deseen que parezca. 7. Click en el boton OK y listo!!! su Tabla ya tiene titulo. Vean que al seleccionar "Titled Border" tienen otras propiedades mas para personalizar su titulo como fuente, tamaño de fuente, color, etc Suerte!!

Quince frases geniales de Albert Einstein
1. "La mente es como un paracaídas… Solo funciona si la tenemos abierta". 2. "Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas". 3. "La imaginación es más importante que el conocimiento". 4. "El mayor misterio del mundo es que resulta comprensible". 5. "Todo debe simplificarse lo máximo posible, pero no más". 6. "El secreto de la creatividad es saber cómo esconder tus fuentes". 7. "Toda la ciencia no es más que un refinamiento del pensamiento cotidiano". 8. "La educación es lo que queda una vez que olvidamos todo lo que aprendió en la escuela". 9. "Lo importante es no dejar de hacerse preguntas". 10. "Nunca pienso en el futuro. Llega demasiado pronto". 11. "Dos cosas son infinitas: la estupidez humana y el universo; y no estoy seguro de lo segundo". 12. "No todo lo que cuenta puede ser cuantificado, y no todo lo que puede ser cuantificado cuenta". 13. "Locura es hacer la misma cosa una y otra vez esperando obtener diferentes resultados". 14. "Primero tienes que aprender las reglas del juego, y después jugar mejor que nadie". 15. "Hay una fuerza motriz más poderosa que el vapor, la electricidad y la energía atómica: la voluntad"

Ejecutar y configurar ODBC de 32 bits en Windows 7
Holas, estoy (lamentablemente) comenzando a usar Win7 en mi trabajo... asi que ha aprender a configurar el software empresarial en este SO. Uno de tantos problemas es ejecutar mis drivers ODBC de 32 bits, para esto descargamos el ultimo instalador del driver que quieran ejecutar (en mi caso PostgreSQL y MySQL) y luego ejecuten directamente el siguiente programa c:\windows\syswow64\odbcad32.exe. Este es el administrador ODBC de 32 bits, porque cuando ejecutan el del panel de control es de 64 bits y no muestra estos drivers. Espero les sirva. Bytes!!

Fijar el ancho de columna de un JTable Visualmente
Holas, antes puse como fijar este ancho por codigo, pero a muchos nos gusta usar el IDE sin tener que ejecutar el programa para ver como quedan nuestras columnas. Para fijar las columnas "visualmente" usando el IDE Netbeans: 1. Tener un JTable :o) 2. Cambiar la propiedad "autoResizeMode" a OFF. 3. Click derecho en el JTable e ingresar a la opcion "Table Contents". 4. Ir a la pestaña "Columns" 5. Selecionar la columna a la que queremos fijar el ancho. 6. Cambiar el valor "Pref. Width" al ancho que queramos. Cerramos la ventana y listo, veremos que el ancho de la columna a variado segun le hayamos indicado. Bye

Cambiar coma por punto decimal en IReport/JasperReport
Bueno, despues de tiempo compartire algo, el problema es cambiar la coma decimal por punto decimal en un campo numerico en un reporte Jasper. IReport y Jaspercompiler toman por default el "locale" del sistema pero tambien se puede forzar a que sea diferente. En IReport, si quieren q el punto sea el separador decimal y la coma el separador de miles, deben entrar a Herramientas->Opciones->IReport, en la ficha "Compilation and Execution" cambiar el valor de "Report Locale", para mi caso use "Ingles (Estados Unidos)" y lito se compila y funciona. Ahora, mis reportes los compilo y muestro desde un jsp, alli lo que se debe hacer es pasar un parametro indicando el "locale". Para esto primero agregamos el "Import" respectivo en la cabecera: <%@page import="net.sf.jasperreports.engine.JRParameter"%> y luego agregamos el parametro antes de compilarlo, quedando algo asi: Map parameters = new HashMap(); parameters.put("ID", (String)request.getParameter("nro_id")); parameters.put(JRParameter.REPORT_LOCALE, Locale.US); JasperReport report = JasperCompileManager.compileReport(reportPath); JasperPrint print = JasperFillManager.fillReport(report, parameters, ConnrsProyectos); Ok, espero a alguien mas le sirva.

Fijar el ancho de columna de un JTable por codigo
Aporte de Matias Varela :
Para definir el ancho fijo de una columna: Suponiendo que tablaDeIngresos es el Jtable: // le establezco el ancho tablaDeIngresos.getColumnModel().getColumn(0).setWidth(100); // hago que no puede cambiar tablaDeIngresos.getColumnModel().getColumn(0).setResizable(false); Espero sirva. Hay que tener en cuenta que lo anterior va después del tablaDeIngresos.setModel(dtm); That's all

Poblar/llenar una Grilla o JTable con un Resultset
Holas, siempre olvido como hacerlo... asi que mejor lo pongo aqui y si a alguien mas le sirve excelente. El JTable se llama "tblDatos", este ya lo hemos editado con el editor visual de columnas en Netbeans (V6.9.1) (click derecho sobre el JTable -> Table Contents.. -> Columns) y hemos agregado o quitado las que necesitamos , asi como los Titulos y el tipo de contenido. El codigo seria el siguiente: ===========================================================

SQL="select * from clientes"; rst=stmt.executeQuery(SQL); if(rst!=null) { int f=0; ((DefaultTableModel) tblDatos.getModel()).setRowCount(0); while(rst.next()) { ((DefaultTableModel) tblDatos.getModel()).setRowCount(tblDatos.getRowCount()+1); tblDatos.setValueAt(rst.getString("codcliente").toString(),f,0); tblDatos.setValueAt(rst.getString("cliente"),f,1); tblDatos.setValueAt(rst.getDouble("monto"),f,2); f++; } lblTotal.setText("TOTAL CLIENTES. => "+String.valueOf(f)); rst.close();

=========================================================== That´s all. bye

Usar un alias de campo en otro campo

Esto se podia hacer en MSAccess muy sencillo, por ejemplo: select (punit*cantidad) as total, total/1.19 as vventa from factura el alias total es usado para general el alias vventa. En MySQL se resuelve usando variables: SELECT @total:=(punit*cantidad) as total, @total/1.19 AS vventa FROM factura

Generar una sola instancia de un JFrame
Cuando hacemos programas con formularios windows y los llamamos desde un menu, cada vez que hacemos click sobre la opcion del menu nos creara un nuevo form, lo que deseaba es tener una sola instancia de cada formulario, sin usar el modo modal claro esta. Encontre una forma.. usando el "Patrón Singleton", la verdad no lo entiendo muy iben pero como muchos de uds. solo queremos usarlo, y hacer rapidamnete nuestros programas; he aqui la forma: 1. Diseña tu formulario(jframe, jdialog, jinternalframe, etc) en el IDE Netbeans. 2. Cambia en el formulario la propiedad "defaultCloseOperation" a HIDE 3. Agrega la propiedad "myInstance" a la clase de tu formulario, algo como: private static myjFrame myInstance; 4. Agrega el metodo getinstance() al formulario, algo como: public static myjFrame getInstance() { if (myInstance == null) myInstance = new myjFrame(); return myInstance; } 5 Para usar el formulario desde un menu: private void jMenuItem2MousePressed(java.awt.event.MouseEvent evt) { myjFrame myForm = myjFrame.getInstance(); myForm.setVisible(true);

} Espero les sirva. Publicado por Jose A.P. (a.k.a. InkaHack) en 16:54 Etiquetas: Netbeans_Swing 1 comentario:

1. Constantine11 de enero de 2012 10:19

He estado trabajando mucho en este tema y resolvi como solución no capturar la instancia creo q lo mas efectivo es que al momento de crear la instancia nueva, desabilitar el boton o el item del menu con "setEnable(false);", y al momento de cerrar esa ventana enviar q este elemento se vuelva a habilitar "setEnable(true);". Ej: Clase a{

//asumos q ya todo los componentes estan //inicializados y en funcionamiento private JMenuItem/JButton NombreBoton; //aqui es donde le doy la accion crear //la nueva instancia desde un evento private void nuevaVentanaXActionPerformed (java.awt.event.ActionEvent evt) { NombreBoton.setEnabled(false);//atencion b instanciaB = new b(NombreBoton); instanciaB.show(); this.JDesktopPane.add(NombreBoton); } } Clase b{ private JMenuItem/JButton NombreBoton; //Aqui solo inicializo un elemento para //luego enviarlo como parametro al constructor //de la instancia q voy a crear y solo

//para decirle q cuando cierre la instancia //el componente se vuelva habilitar public b(JMenuItem/JButton instancia) { NombreBoton = instancia } private void botonCerrarNuevaInstancia ActionPerformed (java.awt.event.ActionEvent evt) { NombreBoton.setEnabled(true); this.dispose(); } } //esto es solo explicativo no lo copien y lo peguen porque nunca les va a funcionar, solo entiendan la logica y se daran cuenta q es demasiado sencillo y practico

Centrar JFrame
Hola, haber algo sencillo de hacer pero q a veces me paro olvidando.. Netbeans nos ahorra el trabajo de hacer codigo con mucha utilidades visuales.. poco a poco ire publicando varias de las cosas que he podido encontrar.. Centrar un JFrame (Netbeans 6.1) 1. Seleccionar el JFrame que queremos aparezca centrado. 2. En la ventana de propiedades seleccionar la ficha "Code". 3. Cambiar el valor de "Form Size Policy" a "Generate Resize Code". 4. Con lo anterior se activa la edicion de los valores de "Generate Size" y "Generate Center". Predeterminadamente ambas estan seleccionadas, por lo que no sera necesario hacer nada mas. Y listo con eso ya tus JFrames se mostraran centrados.

Anónimo Otra forma mas facil es irte al constructor de tu jFrame y debajo de initComponents(); pones-> setLocationRelativeTo(null); y listo!

You're Reading a Free Preview

Descarga
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->