|
Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.
Mensajes - kike_monarcas
1
« en: Lunes 1 de Octubre de 2007, 17:46 »
Hola. Para pasar tu programa de la computadora a tu movil puedes utilizar varios métodos. Si tienes un movil Nokia entonces tendrás el disco donde viene una aplicación llamada Nokia PC Suite. Es facil de usar puesto que realizas una conexion a tu movil por medio del cable USB, un dispositivo de infrarrojo o un Bluetooth. Bastará con enviar a tú movil los archivos JAR (la aplicación) y JAD (el archivo de manifiesto de la aplicación). Sin embargo otra forma de hacerlo es poniendo tu aplicación en un servidor y hacer que el archivo de manifiesto apunte hacia la aplicación para que se pueda descargar desde el mini navegador de tu movil. Obviamente, tienes que crear la página y la liga para descargar la aplicación. Espero que te sirva esta pequeña ayuda.
¡Saludos!
2
« en: Jueves 30 de Agosto de 2007, 01:38 »
He probado como dices Darktigerhell, "Unload frmBusqueda" y el error aparece, pero ejecutando el programa línea por línea me he dado cuenta de que el error se produce justo cuando se llega al End Sub. He intentado también cerrando el objeto ADODB.Recordset que envia los datos al DataGrid, seguiré buscando una solución...
¡Saludos!
3
« en: Jueves 30 de Agosto de 2007, 00:08 »
El error es el siguiente:
La instrucción en "0x24ec4e80" hace referencua a la memoria en "0x00000054". La memoria no se puede "read"
Haga clic en Aceptar para finalizar el programa Haga clic en Cancelar para depurar el programa
Aceptar/Cancelar
Cuando le doy Aceptar finaliza la aplicación, pero si le doy depurar abre MS V C++ y me da el siguiente error:
Unhandled exception in VB6.exe (MSDATGRD.ocx) 0xC0000005: Access violation.
En la ventana de VB no se marca ninguna línea.
4
« en: Miércoles 29 de Agosto de 2007, 01:40 »
Bien. En un formulario, el primero que aparece, hay un campo de texto en el cual el usuario coloca una clave, por ejemplo 1502. En el mismo formulario tengo una función que se encarga de establecer la instrucción sql de búsqueda... // Parte de frmRegistrar Private Function buscarArticulosEnCatalogo(valor As String) If resultset.State = adStateOpen Then resultset.Close End If Select Case valor Case "XXX" With comando // Variable global .ActiveConnection = sentenciasSQL.conexion // Conexion a la bdd .CommandText = "SELECT * FROM XXX where Clave = '" & cmpClave.Text & "'" End With With resultset // Variable global .CursorType = adOpenKeyset .LockType = adLockOptimistic .Open comando End With // Los otros casos son similares End Select frmBusqueda.Show vbModal // Es es el formulario emergente resultset.Close End Function
Dentro del formulario frmBusqueda solo aparece solamente un DataGrid en el que se coloca el resultado de la búsqueda, y el código siguiente... Private Sub dtgArticulos_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then Select Case formularioDestino //.. El Select Case lo utilizo porque este formulario es llamado por varios formularios frmRegistrar.cmpColor = dtgArticulos.Columns("Color").Text frmRegistrar.cmpMaterial = dtgArticulos.Columns("Material").Text frmRegistrar.cmpTalla = dtgArticulosColumns("Talla").Text frmRegistrar.cmpPrecio = dtgArticulosColumns("PrecioVenta").Text frmRegistrar.cmpFechaRegistro.Text = Format(Date, "dd/mm/yyyy") End Select Unload Me // Aqui quiero realizar el Unload Me pero causa el error End If End Sub Private Sub Form_Load() Set dtgArticulos.DataSource = resultset // Esta variable es global dtgMarcas.Columns("Color").Width = 1500 dtgMarcas.Columns("Material").Width = 1500 dtgMarcas.Columns("Talla").Width = 1500 dtgMarcas.Columns("Precio").Width = 1500 dtgMarcas.Columns("PrecioVenta").Width = 1500 End Sub
Y el error no se produce cuando cierro la ventana con Alt F4.
5
« en: Miércoles 29 de Agosto de 2007, 01:00 »
Hola. Estoy realizando una aplicación que manipula los registros de una base de datos, para lo cual, al momento de registrar un artículo en almacén, presento al usuario una ventana emergente que contiene un DataGrid donde se describen los artículos que se pueden registrar en base a una lista de catálogos existentes. Necesito que al presionar la tecla Enter sobre el DataGrid de la ventana emergente retorne los datos al formulario en que se procesa el registro. Sin embargo, al presionar Enter me aparece el error de que "la instrucción xxx hace referencia a la memoria. No se puede read... Aceptar/Cancelar". Más sin embargo cuando cierro la ventana con Alt F4 funciona perfectamente. Estoy utilizando objetos ADODB.Recordset y ADODB.Command para realizar las consultas a la base de datos.
Espero que puedan ayudarme, un saludo y gracias por sus comentarios.
6
« en: Martes 27 de Marzo de 2007, 18:17 »
Tienes razón Jpaler, lo único que intento es ponerle íconos a los botones en las barras de herramientas. Lo que sucede es que cuando abro un ícono en Paint, por ejemplo, el fondo toma un color negro y así guardo la imagen en formato jpg. Mientras que las imágenes .ico no tienen ese problema. Pero bueno, simplemente cuestión de apariencia. Gracias por el comentario. Un saludo!
7
« en: Lunes 26 de Marzo de 2007, 05:29 »
Hola. Quisiera saber si alguien sabe como insertar una imagen .ico en un JMenuItem. He logrado asignarles imágenes .jpg, .png y .gif, pero no he logrado colocarles imágenes íconos. La forma en que le asígno la imagen a un JMenuItem es la siguiente; JMenuItem menuItem = new JMenuItem( "Abrir" ); menuItem.setIcon( new ImageIcon( "Imagenes\\abrir.jpg" ) ); // <- Cambiar por Imagenes\\abrir.ico menu.add( menuItem ); barraMenus.add( menu );
Quizá la forma en que lo estoy haciendo no es la correcta. Agradezco sus comentarios. Saludos!
8
« en: Viernes 2 de Febrero de 2007, 00:21 »
Hola. La clase JColorChooser puede servirte. Aqui hay información sobre ella: JColorChooserSaludos!
9
« en: Martes 23 de Enero de 2007, 23:14 »
Hola. Por default, todas las variables que no tengan ningún modificador de acceso son públicos, entonces, en tu programa no necesitas tener un método que acceda a la variable "a" a menos de que ésta sea privada. Saludos!
10
« en: Sábado 30 de Diciembre de 2006, 01:08 »
Bueno, si lo que necesitas es pasar todo el arreglo con sus valores a una función pues lo mejor es declarar la función de forma tal que en los parámetros pueda recibir un arreglo bidimensional, por ejemplo: int[][] sumador( int[][] matriz ){ for( int x = 0; x < 2; x ++ ) for( int y = 0; y < 2; y ++ ) matriz[ x ][ y ] = matriz[ x ][ y ] + 1; return matriz; }
En donde el parámetro matriz recibe el arreglo que le deseas mandar a la función. Nada más hay que tomar en cuenta el paso de parámetros por valor y por referencia y, dependiendo de tus necesidades, pasar todo el arreglo a la función o solo algunos valores. Saludos
11
« en: Sábado 23 de Diciembre de 2006, 20:28 »
Hola. Como ya se ha comentado en muchas ocasiones en el foro, con Java no podemos crear archivos ejecutables como los .exe de C o Visual Basic. Sin embargo, podemos crear contenedores de clases, archivos Jar, que funcionan con ciertas similitudes con respecto a los ejecutables, ya que son archivos que puedes ejecutar con tan solo dar doble click sobre ellos en computadoras con MS Win XP, por ejemplo. Otra opción es crear un archivo de proceso por lotes en donde tengas escrita la ruta de tu archivo .class que contiene el método main() y poner dentro de una carpeta todos los archivos de clases. Si usas un IDE para programar Java los archivos jar se crean más facilmente. Aqui tienes un ejemplo claro de cómo crear archivos Jar. Saludos!
12
« en: Jueves 21 de Diciembre de 2006, 02:15 »
Adivino Este sencillo programa escrito en lenguaje Java presenta seis casillas de verificación (JCheckBox) que se tomarán como cartas para el usuario, el cual piensa un número entre 1 y 62 seleccionando las cartas en las que su número no aparece. Una vez que se haya hecho este proceso bastará con presionar el botón Adivinar, asi el programa determinará qué número es el que se tiene en mente.
El programa está basado en el famoso Juego de Cartas Mágicas que hiciera el matemático estadounidense Martin Gardner. El ejemplo con la explicación del juego se encuentra en el libro de Álgebra en todas partes, de José Antonio de la Peña. Tomemos en cuenta que el número de casillas, así como el número de elementos de las cartas puede aumentar dependiendo del programador.
También, debe considerarse que si el programa permanece inactivo por más de un minuto, este se cerrará automáticamente.
El archivo comprimido contiene el código fuente y el archivo JAR que puede ejecutar más facilmente el programa. Un saludo.
Autor: Enrique Navarro Padilla
13
« en: Martes 28 de Noviembre de 2006, 18:36 »
Hola. Antes que nada primero agradecer por todos los comentarios que me han servido de mucho. La duda que ahora comento es sobre la utilización de la interface AWTEventListener. Quisiera saber si alguien tiene un ejemplo sencillo de cómo manejar esta interface y también si funciona con objetos Swing. Espero sus comentarios. Saludos!
14
« en: Sábado 25 de Noviembre de 2006, 20:48 »
Hola. Cuando se utiliza un JComboBox no es posible asignarle un texto como lo hacemos cuando tenemos una caja de texto, esto es porque se definen los elementos que contendrá la lista del combo previamente para poder ser seleccionados. En tu caso, te recomiendo que utilices los métodos: jComboBox.setSelectedIndex( unEntero ); jComboBox.setSelectedItem( unObjeto );
El primero selecciona un elemento de la lista de acuerdo al índice de apareción, comenzando en cero. El segundo selecciona un elemento de la lista escrito tal y como se encuentra definido en el combo. Espero y puedas solucionar tu problema. Saludos!
15
« en: Miércoles 22 de Noviembre de 2006, 01:07 »
Hola. Mira, el proceso es similar a como lo haces con el botón, simplemente agrega el siguiente fragmento de código al método jbInit() y al presionar Enter el texto del campo se pasará al área de texto. jTextField1.addActionListener( new ActionListener(){ public void actionPerformed( ActionEvent evento ){ jTextArea1.setText( jTextArea1.getText() + "\n" + jTextField1.getText() ); } } );
Saludos!
16
« en: Sábado 11 de Noviembre de 2006, 04:03 »
Hola. Mira, si deseas saber que botón del ratón se ha presionado te sugiero que implementes en tu ventana (JFrame) un MouseListener con la siguiente forma: addMouseListener( new MouseAdapter(){ public void mouseClicked( MouseEvent evento ){ if (evento.getModifiers() == MouseEvent.BUTTON1_MASK ) { JOptionPane.showMessageDialog( null, "Click izquierdo" ); } if (evento.getModifiers() == MouseEvent.BUTTON2_MASK ) { JOptionPane.showMessageDialog( null, "Click centro" ); } if (evento.getModifiers() == MouseEvent.BUTTON3_MASK ){ JOptionPane.showMessageDialog( null, "Click derecho" ); } } } );
en caso de que el ratón que estes manejando tenga solo dos botones puedes quitar el segundo if. Espero que te sirva. Saludos!
17
« en: Jueves 12 de Octubre de 2006, 02:03 »
Hola. Puedes implementar una clase con la interfaz FocusListener y en sus métodos procesar la información que requieres, como saber que componente gana o pierde el foco. Aqui un ejemplo bastante sencillo, espero que te sirva. Saludos! import java.awt.*; import java.awt.event.*; import javax.swing.*; public class PruebaFoco { public static void main( String args[] ) { new FormaPruebaFoco(); } } class FormaPruebaFoco extends JFrame{ public FormaPruebaFoco(){ super( "Aplicación con el Foco en Java" ); Container contenedor = getContentPane(); contenedor.setLayout( null ); campo1 = new JTextField( "Campo1" ); campo1.setName( "Campo1" ); campo2 = new JTextField( "Campo2" ); campo2.setName( "Campo2" ); contenedor.add( campo1 ); contenedor.add( campo2 ); campo1.setBounds( 50, 50 ,100, 28 ); campo2.setBounds( 50, 100, 100, 28 ); campo1.addFocusListener( new ProcesaFoco() ); campo2.addFocusListener( new ProcesaFoco() ); setSize( 200, 200 ); setVisible( true ); setResizable( false ); setLocationRelativeTo( null ); setDefaultCloseOperation( EXIT_ON_CLOSE ); } private JTextField campo1, campo2; } class ProcesaFoco implements FocusListener{ public void focusGained( FocusEvent evento ){ JTextField campo = (JTextField)evento.getComponent(); System.out.println( campo.getName() + " ganó el foco" ); } public void focusLost( FocusEvent evento ){ JTextField campo = (JTextField)evento.getComponent(); System.out.println( campo.getName() + " perdió el foco" ); } }
18
« en: Jueves 12 de Octubre de 2006, 01:39 »
Hola. Si lo que quieres es obtener la hora y la fecha del sistema, la clase java.util.Calendar puede ser de gran ayuda. Aqui te pongo un ejemplo de ello, espero que te sirva. Saludos! import java.util.*; import java.text.*; public class Fecha{ public static void main( String args[] ){ Calendar cal = Calendar.getInstance(java.util.Locale.US); Date date = cal.getTime(); DateFormat formateadorHora = DateFormat.getTimeInstance( DateFormat.FULL ); DateFormat formateadorFecha = DateFormat.getDateInstance(java.text.DateFormat.FULL); System.err.println(formateadorFecha.format(date)); System.err.println(formateadorHora.format(date)); System.exit( 0 ); } }
19
« en: Jueves 5 de Octubre de 2006, 01:43 »
Hola. Aqui te pongo un ejemplo de cómo lo pude hacer yo y a continuación explico. La clase BufferedReader de java.io nos permite hacer lecturas desde la ventana de comandos o desde alguna ventana de resultados en un IDE en un programa de Java que así lo requiera. Con esta clase tenemos la posibilidad de realizar lecturas línea desde cualquier lugar, como es el teclado o un archivo. Bastará con especificarle a la clase BufferedReader qué tipo de flujo vamos a manejar, en este caso FileInputStream o flujo de entrada desde un archivo. En el ciclo se presenta todo el contenido del archivo que se desea leer línea por línea. El bloque try-catch nos sirve para ve cuándo se ha alcanzado el fin de archivo, ya que si el ciclo no está dentro de un bloque que capture una NullPointerException marcará un error a la hora de intentar comparar la variable texto con null en la condición del while. Esta es una forma un tanto "diferente" de hacer esta lectura, pero espero que te sirva. Se aceptan sugerencias del código. Saludos!
20
« en: Miércoles 19 de Julio de 2006, 22:48 »
Hola, para conectar MySQL con Java puedes seguir el siguiente ejemplo. Conexión: String bdd = "agenda"; String usuario = "nombre"; String laClave = "unaClave"; DriverManager.registerDriver( new org.gjt.mm.mysql.Driver() ); Connection conexion = DriverManager.getConnection( "jdbc:mysql://localhost/" + bdd, usuario, clave ); Statement sentenciasSQL = conexion.createStatement( ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_UPDATABLE ); ResultSet personas = sentenciasSQL.executeQuery( "select * from Datos" ); while( peronas.next() ){ System.out.print( "\nDNI: " + personas.getInt( "DNI" ) ); System.out.print( "\nNombre: " + personas.getString( "Nombre" ) + "\n" ); } personas.close(); sentenciasSQL.close(); conexion.close();
Toma en cuenta que algunas de las instrucciones pueden lanzar la exception SQLException por lo que tendrán que ser atrapadas. El driver de MySQL para Java lo puedes encontrar en esta dirección: http://dev.mysql.com/downloads/connector/j/3.1.htmlSaludos!
21
« en: Viernes 2 de Junio de 2006, 23:51 »
Hola. Aqui pongo un archivo en el que explico como hacer la conexión de Java con MySQL, además de dónde colocar el controlador JConnector. Espero que te sirva. Saludos!
22
« en: Viernes 2 de Junio de 2006, 00:08 »
Hola a todos. Quisiera saber si me pueden ayudar a resolver el siguiente problema. Estoy manejando una base de datos creada en MySQL desde una aplicación Java. En la base de datos tengo una tabla que tiene la siguiente forma: create table Materias_Alumno( NumControl varchar( 8 ) not null, ClaveMateria varchar( 4 ) not null, int Calificacion, int Semestre foreign key( NumControl ) references Alumnos ( NumControl ), foreign key ( ClaveMateria ) references Materias( Clave ) ); En mi aplicación Java tengo una función que crea un Statement con la siguiente forma: Statement sentenciasSQL = conexion.createStatement( ResultSet.TYPE_SCROLL_INTENSITIVE, ResultSet.CONCUR_UPDATABLE ); ResultSet busqueda = sentenciasSQL.executeQuery( "select * from Materias_Alumno" ); Sin embargo cuando quiero realizar un movimiento para poder hacer una nueva inserción de un registro me da un error diciendo que el ResultSet no ha sido creado para sctualizarse (updatable). busqueda.moveToInsertRow(); <-- Aqui el problema. ¿Alguien podría ayudarme? Gracias de antemano y saludos.
23
« en: Jueves 18 de Mayo de 2006, 20:02 »
Hola. Puedes utilizar para lo que deseas hacer los métodos replace(); replaceAll(); ó replaceFirst(); los cuales nos permiten el tratamiento de cadenas para reemplazarlas por otras. Por ejemplo: String miCadena = "Hola Mundo"; // Imprimir mi cadena original System.out.print( miCadena ); // Imprimir la cadena reemplazada: System.out.print( miCadena.replaceAll( "Mundo", "Pepe" ) ); Espero que te sirva. Saludos!
24
« en: Viernes 28 de Abril de 2006, 01:07 »
Hola. Quisiera saber si existe algún método para conocer el número de fila y de columna donde se encuentra el cursor en un objeto JTextPane. He probado con getCaretPosition(); pero no he podido lograr lo que quiero hacer. Cualquier ayuda será bien recibida. Saludos!
25
« en: Martes 18 de Abril de 2006, 00:45 »
Hola. Según tengo entendido quieres lanzar una excepción al momento en que se detecte que un campo (JTextField) tiene números. Si es lo que deseas entonces una forma es crear una excepción propia que extienda a Exception y que sobreescriba el método toString() ó printStackTrace() para que se le presente el error al usuario. Cuando se encuentre algún número en el campo de texto entonces bastará con lanzar la nueva excepción; por ejemplo: throw new ExcepcionDeNumeros(), para enseguida capturarla en un catch y presentar el error. De igual forma puedes hacerlo cada vez que se presione una tecla o hasta tener todo el texto en el campo y validarlo con un botón. Saludos!
|
|
|