Doble Click?


Objetivo: Doble Click?
Hola a todos ... hoy vengo que esta duda

Tengo cinco imagenes (picturebox)

Lo que quiero lograr es que cuando le de click a una las otras 4 desaparescan y al volverle a dar click vuelvan a aparecer

masomenos quiero algo asi

espero puedan ayudarme

última edición por arkyansoul el Viernes, 19 Noviembre 2010, 17:27; editado 1 vez
Objetivo: Re: Doble Click?
Hola
Pon las cinco imágenes en el mismo grupo. Pongamos el grupo PIC

Ahora codifiquemos el evento click para el grupo PIC
private sub PIC_click()
Dim c as control
for each c in PIC 'para todos los elementos de grupo PIC
c.visible=false 'hacerlo invisible
next

Ahora hacer visible solo el que he pulsado
last.visible=true
end


Eso hace que cuando des click se oculten todas y solo se muestre la que clickaste.

última edición por soplo el Viernes, 19 Noviembre 2010, 18:45; editado 1 vez
Perfil MP  
Objetivo: Re: Doble Click?
Creo que no me explique bien

Tengo 9 pictureBox

1 2 3
4 5 6 (cada numero es un picturebox)
7 8 9

Lo que quiero es que al presionar el "numero" 5 ||||||||||| 1 0 3
el 4 , 2 , 6 , 8 y tambien 5 desaparezcan ||||||||||||||||||||||||||| 0 0 0
quedando solo el 1 , 3 , 7 ,9 |||||||||||||||||||||||||||||||||||||||||||||||| 7 0 9

Al presionar por ejemplo el "numero" 1 |||||||||||||| 0 2 3
el 4 y el 2 que estaban invisibles aparezcan ||||| 4 0 0
Y el 1 desaparezca |||||||||||||||||||||||||||||||||||||||||||||||||| 7 0 9

Al presionar el "numero" 2 |||||||||||| 1 0 0
el 1 y el 5 aparecen ; |||||||||||||||||||||| 4 5 0
Y el 3 y ell 2 desaparecen ||||||||||||| 7 0 3

Y (lo bueno) Al presionar el "numero" 5 |||||||| 1 2 3
El 2 , 3 , 4 , 8 aparecen ||||||||||||||||||||||||||||||||||||| 0 0 6
Y el 4 y el 5 desaparecen ||||||||||||||||||||||||||||||||| 7 8 9

Dependiendo de la situación es como actúa el picturebox al darle click

espero que me aya explicado mucho mejor

Objetivo: Re: Doble Click?
Revisa la respuesta de soplo, que creo que el que no la entiende eres tú. La solución la tienes ahí.

suerte

Perfil MP  
Objetivo: Re: Doble Click?
Pues no. La verdad es que no te explicas.

¿Si yo pulso una imagen esta debe obligatoriamente de cambiar de estado?
¿Deben cambiar de estado sus adyacentes? ¿Es eso?

Porque si es eso es muy simple. Primero cambias de estado la imagen pulsada, luego buscas sus adyacentes y a cada uno le haces un xor entre su estado y el estado del pulsado. Para cambiar de estado la imagen pulsada basta con negar la situación actual.

Perfil MP  
Objetivo: Vamos A Ponerlo Mas Facil
public sub picturebox_dblclick()
foto.visible=false
foto1.visible=true
foto2.visible=true
end sub

y asín sucesivamente haber si ahora lo as entendido
claro, lo que soplo quería hacer, "que es correcto", era desaparecer todo el grupo

Perfil MP  
Objetivo: Re: Doble Click?
Yo soy el de menos, estoy en window$, pero lo que me parece que se aplica en este problemita es :..... captur1

captura2

Cada un a de las opciones que planteas se resuelve facilmente con un codigo de este tipo.
Suerte.

última edición por ivanovichenco el Sabado, 20 Noviembre 2010, 05:33; editado 2 veces
Perfil MP  
Objetivo: Re: Doble Click?
ya habia visto ese codigo en el manual de gambas...
pero me trabe con la parte "DIM Valor AS Integer

ya que en este caso no es un entero sino un...
jejeje... es lo malo de ser novato

tambien seria una buena opcion pero en vez de poner "Integer"
que seria???
ojala me puedan ayudar

Objetivo: Re: Doble Click?
Pues pongo el código para que al pulsar una imagen esta cambie su estado y algunas otras imágenes lo cambien también

Todas las imágenes en un solo grupo llamado PIC. Cada uno con el tag indicando su posición (p. ej 11, 12, 13, 21, 22, 23, ...)

private sub PIC_click()
Dim Lista_Imágenes as object[], Obj as object
last.visible=not last.visible 'cambiar el estado del botón pulsado.
ListaImagenes=ObtenerOtrosPic(last) 'paso la imagen pulsada y obtengo una lista de los pic a cambiar

for each obj in Lista_Imagenes
obj.visible=not obj.visible
next


La rutina de obtener la lista de imágenes a cambiar no se cual sería porque no entiendo lo que pides pero mas o menos sería algo así
private sub ObtenerOtrosPic(ObjPinchado as object) as object[]
Dim Obj as object, ListaImagenes as object[]
for each obj in PIC
if ... '(condicion que de true si hay que cambiar esta imagen
listaImagenes.add(obj)
endif
next
return ListaImagenes
end


Al hacer el picture.visible=not picture.visible le obligo a cambiar. Si era true a false. Si era false a true.
Como no tengo claro como saber cual cambiar y cual no es posible que eso no valga porque se cambia en función del estado del picture pinchado. En ese caso sería una de las siguientes posibilidades (picture1 es el pinchado y el 2 es el que hay que cambiar)
picture2.visible=picture1.visible xor picture2.visible.'true si son distintos, false si son iguales
picture2.visible=picture1.visible and picture2.visible 'true si ambos son visibles, false si uno de ellos no lo es
picture2.visible=picture1.visible or picture2.visible 'true si uno de ellos es visible, false si ninguno lo es

Perfil MP  

Página 1 de 1


  
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

   

Está utilizando la versión (Lo-Fi). Para ver la versión completa del foro, haga clic aquí.

Powered by Icy Phoenix based on phpBB
Design by DiDiDaDo

Página generada en:: 0.4975s (PHP: -81% SQL: 181%)
Consultas SQL: 48 - Debug off - GZIP Activado