Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Obtener Valores De PictureBox
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Obtener Valores De PictureBox 
 
Que tal, saludos a la comunidad desde mi primer mensaje    omito los datos de mis versiones por que creo que no son necesarios para este problema, bueno al grano, tengo 2 imagenes, una que representa un led apagado y otra uno prendido, dentro de su nombre indica que tipo de led es (apagado.jpg) quiero que dando un click sobre la imagen se "prenda" y dando otro se "apague", para eso necesito saber que imagen estoy mostrando y así cambiar a la otra, entonces necesito el texto cargado en el "picture" de mi imagen, osea la ruta completa aunque solo me interesa el nombre, para cambiarla por la otra, por ejemplo con algo así:

Dim estado As String
  
 estado = CString(Led_1_1.Picture.Text)

pero me tira error, se que puedo usar banderas, pero son casi 1000 leds que simulare simultaneamente así que no quiero declarar 1000 banderas, gracias y saludos.
 



 
Erik Gasca - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
Bienvenido Erick.

Debes usar la propiedad Picture del PictureBox.

Si el Picturebox tiene ya asignada la imagen de apagado Puedes hacer lo siguiente usando el evento MouseDown (No tiene evento Click).

Con un solo led.

Public Sub PictureBox1_MouseDown()

  If PictureBox1.Picture = Picture["Apgado.png"] Then
      PictureBox1.Picture = Picture["Encendido.png"]
  Else
      PictureBox1.Picture = Picture["Apagado.png"]
  Endif

End
 


Si lo que quieres es hacer lo mismo con mas leds debes usar una array de controles.
Tienes que hacer uso de la propiedad grupo y tag (es como un indice que nos dice que elemento
del array ha sido seleccionado).

Para ello usamos la propiedad last (ultimo). Si a last le añadimos .propiedad
en este caso Picture, tendríamos:

En mi caso he creado el grupo bombillas.

Public Sub Bombillas_MouseDown()

If Last.Picture = Picture["LIGHTOFF.PNG"] Then
  Last.Picture = Picture["LIGHTON.PNG"]
Else
  Last.Picture = Picture["LIGHTOFF.PNG"]
Endif

End
 

Es el mismo código para todos los picturebox.

Aquí tienes el código para que lo estudies.

Saludos

Bombillas.tar.gz
Descripción:  
Descargar
Nombre del archivo: Bombillas.tar.gz
Tamaño: 6.86 KB
Descargado: 35 veces
Bombillas.tar.gz
Descripción:  
Descargar
Nombre del archivo: Bombillas.tar.gz
Tamaño: 6.86 KB
Descargado: 35 veces
Bombillas.tar.gz
Descripción:  
Descargar
Nombre del archivo: Bombillas.tar.gz
Tamaño: 6.86 KB
Descargado: 35 veces

 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
última edición por Shell el Domingo, 02 Junio 2013, 19:53; editado 1 vez 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
Muchas gracias, con los eventos no tengo problemas, no había pensado en comparar un picture con otro picture aunque era tan obvio jajaja, hace años que no programo en gambas y ya me ando oxidando, voy a checar el código que me mandas, gracias de nuevo.
 



 
Erik Gasca - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
Quizas sea más rápido usar la propiedad .tag, y en vez de comparar imágenes, comparar un texto:

If PictureBox1.tag = "apagado" Then
      PictureBox1.tag = "encendido"
  Else
      PictureBox1.tag = "apagado"
  Endif
 


Y tambien seria más rápido comparar directamente con un boolean...

if picturebox1.tag=true then
picturebox1.tag=false
else
picturebox1.tag=true
endif

 


Saludos
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
Julio:

Entonces se le puede asignar a tag no solo valores como un índice si no que se le puede asignar cadenas y valores booleanos.
Esto tengo que verlo.

La primera vez intente hacerlo con una variable boolean, para un led valdría.
El problema ocurre cuando son mas. No es solo un led.

Ya puestos incluso se puede crear la clase led, pero eso seria complicarlo mas.  
Queda mejor desde luego.

Saludos
 




===================
Gambas Básico
"No es un bug, es una característica no documentada"
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
Shell:

Citar:
clase led

Si eso seria todavia mejor, mucho más claro, y más fácil de reutilizar y ampliar. Por ejemplo se le podia poner una propiedad para indicar el color del led...
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
tag es un variant. Puede almacenar casi cualquier cosa (salvo objetos) puedes meterle, por ejemplo un variant[] que contenga todo lo que te te apetezca de todas las clases y formas de datos válidos.

Tag Mola.      
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
Genial, en este momento solo estoy con la documentación de mi proyecto, en unas semanas me meto de lleno con la programación y probaré todas las opciones que me comentan, ahorita y para dar una idea de como trabajará funcionó a la perfección las picture dentro del if, aunque lo de las tag suena interesante, también la clase led, lastima que en mi proyecto ocupare puros leds rojos   pero en cuanto arme el circuito a ver que pasa, muchas gracias por sus respuestas, vayan estudiando la comunicación de gambas y pic18f4550 vía usb que les hare muchas preguntas jajajajaja XD
 



 
Erik Gasca - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Obtener Valores De PictureBox 
 
Citar:
vayan estudiando la comunicación de gambas y pic18f4550 vía usb que les hare muchas preguntas

No esta en gambas, es en java... Enlace
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron