• Miércoles 26 de Junio de 2024, 08:13

Mostrar Mensajes

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 - Epa

Páginas: 1 ... 7 8 [9] 10
201
VBA / Re: Saber Por Donde Pasa El Mouse En Los Objeto
« en: Martes 6 de Febrero de 2007, 01:20 »
Buenas.

Crea un proyecto con 1 form y 1 modulo

en el form agrega un picturebox y un timer. dejale los nombres genericos, al timer ponle el intervalo que quieras.

Luego agrega el siguiente codigo en el modulo:

Código: Text
  1.  
  2. Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
  3.  
  4. Public Type POINTAPI
  5.         x As Long
  6.         y As Long
  7. End Type
  8.  
  9.  
  10. Public Function isOver(ByRef x As Integer, ByRef y As Integer) As Boolean
  11.  
  12.   Dim a As Long
  13.   Dim coo As POINTAPI
  14.  
  15.   a = GetCursorPos(coo)
  16.  
  17.   x = coo.x * Screen.TwipsPerPixelX
  18.   y = coo.y * Screen.TwipsPerPixelY
  19.  
  20.   isOver = a
  21.  
  22. End Function
  23.  
  24.  

y en el formulario el siguiente:

Código: Text
  1.  
  2. Private Sub Timer1_Timer()
  3.   Dim x As Integer, y As Integer
  4.   Dim RetVal As Boolean
  5.  
  6.  
  7.   RetVal = isOver(x, y)
  8.  
  9.   If RetVal = False Then
  10.     MsgBox "Error", , "+ Error +"
  11.     Exit Sub
  12.   End If
  13.  
  14.   x = x - Me.Left - 60
  15.   y = y - Me.Top - 345
  16.  
  17.   x = x - Picture1.Left
  18.   y = y - Picture1.Top
  19.  
  20.   If (x < 0) Or (x > Picture1.Width) Or (y < 0) Or (y > Picture1.Height) Then
  21.     Picture1.BackColor = RGB(255, 0, 0)
  22.   Else
  23.     Picture1.BackColor = RGB(0, 0, 255)
  24.   End If
  25.  
  26. End Sub
  27.  
  28.  

Ejecuta la aplicacion y mueve el mouse sobre el picturebox. Wala  :P

No era tan complicado, ahora solo tienes que adaptarlo a tu aplicacion, en el evento mousemove del control activas el timer, luego una vez que salio lo desactivas, para ahorrar un poco de memoria.

Saludos

Este es
http://foros.solocodigo.com/index.php?showtopic=26834

202
VBA / Re: Saber Por Donde Pasa El Mouse En Los Objeto
« en: Martes 6 de Febrero de 2007, 00:57 »
Buenas.

Como cre q me hice entender en el post anterior, no existe un evento que ocurra al salir el mouse de un objeto en VB ( :blink: )

Saludos

203
Visual Basic 6.0 e inferiores / Re: Solo Numeros En Textbox
« en: Domingo 4 de Febrero de 2007, 01:04 »
Código: Text
  1.  
  2. Private Sub Text1_KeyPress(KeyAscii As Integer)
  3.   Dim numeros As String * 12
  4.   Dim num As String
  5.   Dim v As Integer
  6.  
  7.   numeros = "0123456789," & vbBack
  8.  
  9.   num = Chr(KeyAscii)
  10.   v = InStr(1, numeros, num)
  11.   If v = 0 Then
  12.       KeyAscii = 0
  13.   End If
  14. End Sub
  15.  
  16.  

Asi acepta coma y retroceso, el unico problema es que se pueden agregar letras pegando texto con el menu contextual.

Saludos

Habian 2 errorcitos en el codigo  :P  ahi ya funciona bien.

204
VBA / Re: Componente Activex
« en: Sábado 3 de Febrero de 2007, 01:36 »
Buenas.

Para darte cuenta de lo q digo, crea un proyecto con un formulario normal y ponle esto

Código: Text
  1.  
  2. Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  3.   Print X & " - " & Y
  4. End Sub
  5.  
  6.  

Luego estira el formulario y ejecutalo.
Pasa el mouse de punta a #### rapido, ahi veras que solo aparecen algunas coordenadas del mouse. Dependiendo la velocidad q lo pases.

Ahora ponle un picturebox en el medio (no muy grande) y agrega

Código: Text
  1.  
  2. Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
  3.   Picture1.BackColor = RGB(255,0,0)
  4. End Sub
  5.  
  6.  

Ahora bien pasa el mouse rapido sobre el picturebox, veras que la mayoria de las veces no cambia de color.

Si solo piensas usar el control para tu aplicacion una solucion no demasiado apropiada, pero sencilla es agregarle una funcion publica al control, que lo desactive y esta la llamas desde el evento mousemove del formulario, aunque si tus controles estan al seca del borde puede traer problemas.

Otra mas complicada aunque mas adecuada y que te mencione anteriormente es poner un timer que valla chequeando la posicion del mouse. Cuando se mueve el mouse se activa y empieza a controlar la posicion hasta que se encuentra fuera y ahi se desactiva.
Para esto puedes usar la api GetCursosPos. Nota que esta funcion devuelve los valores en pixeles, si lo multiplicas por 15 tendras el valor en twips, aunque mejor es multiplicarlo por   Screen.TwipsPerPixelX y   Screen.TwipsPerPixelY
A esos valores le restas el left y top del form y le sumas los del control. Puede que halla que sumas un poco mas por la barra de titulos y los bordes. Luego comparas los valores iniciales con esos si se encuentran entre el left y left +  width (= vertical)
estara adentro, sino estara afuera.


Bueno, Espero que se enteinda un poco mejor
Cualquier cosa escribe.

Saludos

205
VBA / Re: Componente Activex
« en: Miércoles 31 de Enero de 2007, 01:26 »
Buenas.

El problema es que usas el evento MouseMove, el cual se produce unicamente cuando el mouse esta encima del control. Tienes que tener en cuenta que al mover el mouse, las coordenadas del mismo no siempre varian de 1 en 1, por lo que si lo mueves muy rapido puede pegar saltos y "no pasar por encima de tu control" por eso tienes que estar verificando constantemente la posicion del mouse.
Puedes usar un timer, q se active al posiconarse el mouse sobre tu control y desactivarse una vez q halla corroborado q el mouse no se encuentra mas encima.

Saludos

206
Visual Basic 6.0 e inferiores / Re: Guardar/guardar Como
« en: Miércoles 31 de Enero de 2007, 01:12 »
Buenas.

Primero, para q te muestre el icono le tienes q poner un icono a tu aplicacion, compilarla y luego asociar tu extencion a tu aplicacion.

Para q se abra un archivo al darle doble click tienes q usar la funcion Command()
la cual devuelve el argumento al iniciar la aplicacion, q sera el archivo q has abierto.
Esta la pones en el procedimiento Main

Para eso te conviene hacer una funcion que abra un archivo, asi usas una sola funcion para el Main y para el menu.

Yo por lo general cuando trabajo con ficheros uso dos variables, una string y una boolena, la primera me almacena el nombre del archivo que esta abierto, y la segundo si se ha modificado.
Entonces si pones guardar y el string es nullo, se abre "guardar como" y te pregunta el archivo, sino lo guarda directamente en el fichero que tienes almacenado.

Para el tema de guardar, lo puedes hacer por lineas o crear un buffer e ir guardando por partes. Eso no lo recuerdo bien, ya q hace tiempo q no trabajo con ficheros en modo de texto :S Si usas un richtextbox tienes una funcion q guarda automaticamente.

Bueno, quisas quedo algo confuso  :P
Espeor sirva.
Saludos

207
Visual Basic para principiantes / Re: Componente Activex
« en: Lunes 29 de Enero de 2007, 23:57 »
Buenas.

Seria util que digas como lo estas haciendo, con q  control, apis o eventos...

Algo q puede servir es un timer q valla controlando la posicion de mouse.

Otra opcion es utilizar subcalsificacion e interseptar los movimientos del mouse para comprobar sus coordenadas. Aunque si no esta bien hecho puede ser un gran consumo de memoria.


Saludos

208
C/C++ / Re: Que Es El Modificador Unsigned????
« en: Viernes 26 de Enero de 2007, 01:26 »
Buenas.

Hace algun tiempo me surgio la misma duda, y tube la misma respuesta.
Para mi la forma mas censilla de entenderlo fue:

Algunas variables reservan el primer bit para el signo, al declararla como unsignes haces que no se reserve ese bit, por lo que lo puedes usar para almacenar numeros mas grandes . Esto te sirve para ahorrar memoria, ya que puedes almacenar un dato en una variable que con signo no entra y evitar usar otra variable que utilize mas memoria.

Espero q mi granito de arema halla sido de utilidad  :)

Saludos

209
VB .NET / Re: Variables C++ A Visual Basic
« en: Viernes 26 de Enero de 2007, 01:07 »
buenas

el valor de retorno de esa funcion es de tipo long, ten cuidado si lo almacenas en un integer ya que puedes tener problemas si el valor sobrepasa el tamaño del integer, ya que en VB el integer reserva 2 bytes y el long 4.

Saludos

210
VB .NET / Re: Variables C++ A Visual Basic
« en: Jueves 25 de Enero de 2007, 01:34 »
Buenas.

En VB6 puedes usar la funcion VarPtr que te devuelve el puntero a una variable de typo void. No se si en .NET sera igual, fijate si funciona, si no prueba preguntar en el foro de VB.NET

Foro .NET

Saludos

211
VB .NET / Re: Menuitem
« en: Martes 23 de Enero de 2007, 02:02 »
:o  me comi unas palabras  :P

quise decir, hacer un post en el foro dedicado a ese lenguaje

Foro VB.NET

Saludos

212
Visual Basic para principiantes / Re: Alguien Q Me Ayude
« en: Martes 23 de Enero de 2007, 01:57 »
Buenas.

Si lo que quieres es imprimir un formulario de to aplicacion, puedes usar la funcion PrintForm del formulario.
Nota que algunos controles no salen en la impresion.

Saludos

213
Visual Basic para principiantes / Re: 2 Proyectos
« en: Martes 23 de Enero de 2007, 01:54 »
Buenas.

Hasta donde tengo entendido, y en lo que lo aplico, usar dos proyectos sirv e para probar dll's o ocx's y podes modificarlos sin tener que usar dos instancias del vb.

Para poder comunicar dos aplicaciones puedes usar subclasificacion y mensajes con las api's. Si lo haces fijate usar valores que no esten definidos por windows, ya que puedes tener resultados inesperados.

Saludos

214
VB .NET / Re: Menuitem
« en: Martes 23 de Enero de 2007, 01:48 »
Buenas.

Bienvenido ^^

En vb 6 es posible, por lo que creo q en .net tambien. Intenta hacer un post dedicado a ese lenguaje, quisas te puedan ayudar mas :P

Saludos

215
Diseño de Algoritmos / Re: Concursos De Programación, Grupo De Entrenamiento
« en: Lunes 22 de Enero de 2007, 04:21 »
Buenas.

Muy buena la idea.  ;)

Me encantaria lastima que no tengo los conocimientos suficientes.  :unsure:

Espero que tu proyecto salga bien, saludos

216
C/C++ / Re: El Pre-procesador
« en: Lunes 22 de Enero de 2007, 04:11 »
Buenas.

el #include sirve para que el compilador comile el fichero que le especificas.
Si en tu fichero main haces una llamada a una funcion  que se encuentra en otro fichero, y no lo compilas te saldra un error, ya que estaras llamando a una funcion que no "existe" en tu aplicacion.

POr ejemplo.

En el fichero horas.h estan las constantes:

C_UNO = 1
C_DOS = 2
C_TRES = 2

Si intentas usar esas constantes sin incluir horas.h, saldra error, ya que al compilar no compilara ese fichero, por lo que esas constantes no existiran en tu aplicacion.
En cambio si lo incluyes, al compilar, el compilador sustituira el include por el codigo del  fichero, y estaran declaradas.

al compilar el compilador "leera" todo lo que se encuentra en el fichero, con excepcion de los espacios y los comentarios

Bueno, los terminos no son los mas practicos xD, soy bastante novato en c/c++ tambien.
Pero espero que haya sido de utilidad

Saludos

217
Visual Basic 6.0 e inferiores / Re: @rober.29
« en: Lunes 22 de Enero de 2007, 00:50 »
Buenas.

Como dijo Arkantos un moderador se ocupa de que se cumplan las normas. No tiene porque hacerse notar o responder posts. Si te fijas, hasta hace un tiempo atras todos los posts de vb.net heran movidos a su foro. no creo q se hayan movido por arte de magia  ;)

Saludos

218
Visual Basic 6.0 e inferiores / @rober.29
« en: Viernes 19 de Enero de 2007, 03:21 »
Rober:

Creo que estaria bueno que muevas los posts relacionados a las bases de datos a su respectivo sub foro, ya que hay gente q parece no darse cuenta que hay un foro dedicado a ello.

Saludos

219
Visual Basic 6.0 e inferiores / Re: "fadeo" O Transicion De Imagenes. Ayuda!
« en: Viernes 19 de Enero de 2007, 00:33 »
Bunas.

No entiendo a lo q te refieres especificamente (ya q no uso contraseñas en mi SO).
Pero te dejo una web que te puede servir.

Dx_Lib32

De ahi podras bajar una dll activex que en realidad esta diseñada para juegos, pero te deja trabajar muy bien con imagenes.

Otra opcion es usar alguna API o libreria grafica, para crear transparencias, el movimiento de una imagen es bastante sencillo.

Saludos.

220
Visual Basic 6.0 e inferiores / Re: Vb To Java
« en: Jueves 18 de Enero de 2007, 00:42 »
La base de la programacion sismpre es la misma (o casi siempre)

una herramienta q se me ocurre es un buen libro  ;)

Leer es la mejor forma de aprender

221
Visual Basic 6.0 e inferiores / Re: List Box
« en: Miércoles 17 de Enero de 2007, 01:19 »
Buenas

Hasta donde se no se puede alinear a la derecha en un listbox, y tampoco no le encuentro mucho sentido, ya que si los datos son de una longitud inferior al ancho del listbox, se hace comlicado leerlos.

Las dos opciones que se me ocurren son agrandar el listbox para que entren los numeros o redondear los numeros para que entren bien.

Otra opcion es usar un textbox, aunque si quieres que el usuario pueda seleccionar una linea se hace algo engorroso.

Saludos

222
Visual Basic 6.0 e inferiores / Re: Bucle De Envio De Correos
« en: Sábado 13 de Enero de 2007, 02:41 »
Buenas.

No  le puse mucha atencion al codigo ya q es largo y estoy cansado  :P
Pero por lo que veo no hay ningun bucle ahi. Quisas no lo vi xD
Otra cosa es que el servidor smtp puede tener un tiempo de espera entre mail y mail para evitar spam, como lo que quieres hacer =P intenta usar otro servidor

Busca separar los destinatarios y mandar por separado, ya que muchos clientes o servidores toman los mails que van dirigidos a multiples usuarios como spam. Ademas si te llega un mail de alguien que no conoces que esta dirigido a muchos usuarios, ni lo lees (por lo menos yo y mucha gente q conosco)

Bueno, creo q no fui de gran ayuda. Pero quisas ppara algo sirva ^^

Saludos

223
Visual Basic 6.0 e inferiores / Re: Grabadora De Sonidos De Windows
« en: Sábado 13 de Enero de 2007, 02:20 »
Buenas

Para ocultar una aplicacion puedes usar la API SetWindowPlacement.
La propiedad showCmd del tipo WINDOWPLACEMENT lo pones en 0. y la ventana sera invisible.

En cuanto a comenzar la grabacion, estube intentando con parametros y mandando mensaje pero con ninguna tube exito.

Espero te sirva el aporte. saludos

224
Buenas

Muchas veces abrir 2 recordset es posible, el problema es que is modificas uno, el otro no tiene forma de saverlo, entonces cuando haces una operacion con el otro da error.
Prueba, cada vez q modifiques alguno, actualizar los dos. ahora miro el codigo haber si encuentro algo.

Saludos

225
Visual Basic 6.0 e inferiores / Re: Leer Pixeles Directo Del Archivo De Imagen
« en: Miércoles 10 de Enero de 2007, 01:35 »
teniendo esa info, yo te aconsejaria recuperar los datos abriendo el archivo en modo binario. Puede q sea un poco mas lento q las otras funciones, pero es muy certero, siempre q lo leas correctamente.

Saludos

Páginas: 1 ... 7 8 [9] 10