Caja De Dialogo Personalizada


Objetivo: Caja De Dialogo Personalizada
Hola.

No me funciona correctamente el código de la caja de dialogo personalizado.

Podéis encontrar el código en la pagina 106 del libro de Daniel Campos y José Luis Redrejo sobre gambas.
No se si es problema del nombre del icono que hay que ponerlo con la la ruta completa o que no funciona.

Tiene un formulario principal con un botón y un Picturebox . Luego otro formulario que se abre como caja de dialogo con tres PictureBox.

Seleccionas uno de estos tres iconos, supongo que se cierra la caja de dialogo y le devuelve el valor 1, 2 o 3 al formulario principal,
colocando en el Picturebox del formulario principal el icono de uno de los tres picturebox de la caja de dialogo mediante el evento MouseDown.

Pues se me queda en la caja de dialogo y no devuelve el icono de uno de los tres PictureBox al PictureBox del formulario principal.


1º Tengo los iconos en la misma carpeta del proyecto, pero eso no lo hace funcionar.
- También lo añadí en la rama del proyecto de datos. Pues tampoco funciono.
Esto sera para cuando creamos un ejecutable.

2º. Si voy a la rama de datos y saco propiedades del icono y copio su ruta y la pego en el código, no sale mas que el nombre el mismo. Ejemplo: a.png
Sera por que esta en la misma carpeta del proyecto.

3º Propuesta. Encontré por la red el pdf del libro "gambas for Begginers" , en ingles, naturalmente.
¿ Interesaría a la comunidad ?.

Un saludo a todos.

Objetivo: Re: Caja De Dialogo Personalizada
Hola shell

Aunque como dices, el código está en el libro de gambas, puede que hayas hecho alguna modificación en él y haya dejado de funcionar.

Generalmente este tipo de errores se deben a que el nombre del objeto y su manejador de evento son diferentes, y no se dispara dicho evento, porque por ejemplo hayas cambiado el nombre del objeto desde la ventana de propiedades y no lo hayas hecho en el código generado.

Ayudaría que pusieras tu código por aquí o subieras tu proyecto para examinarlo.

Saludos

Perfil MP  
Objetivo: Re: Caja De Dialogo Personalizada
Hola Shell
Es correcto lo que dices el código del libro no funciona eso es debido a que para ese manual usaron un gambas 1.9.20 y ahora estamos en la versión 2 y próximamente la versión 3..!!
Bueno respecto a tu pregunta estuve echándole un ojo al libro y al parecer no se puede hacer..!! Pero encontré la solución

1) Ejemplo usaron 3 PictureBox en el formulario FDialog, lo que hice fue remplazar esos PictureBox por unos ToolButton también en el ejemplo usaba el evento MouseDown le cambie los eventos esos a el evento Click. y listo el proyecto corrió a la perfección. Aqui te dejo el codigo

Formulario FMain
1 PictureBox con nombre Pimagen y un button llamado btnselect y texto = Icono
El código del Button sera este
SELECT CASE FDialogo.ShowDialog()
CASE 1
Pimagen.Picture = Picture["a.jpg"]
CASE 2
Pimagen.Picture = Picture["b.jpg"]
CASE 3
Pimagen.Picture = Picture["c.jpg"]
END SELECT


Formulario FDialogo
3 ToolButton1
Codigo de Los Tres ToolButton Evento Click
PUBLIC SUB ToolButton1_Click()
ME.Close(1)
END

PUBLIC SUB ToolButton2_Click()
ME.Close(2)
END

PUBLIC SUB ToolButton3_Click()
ME.Close(3)
END


Listo el Proyecto debe Correr a la perfección

2) Ejemplo
Lo que hice fue remplazar los pictureBox por 3 ToolButton y también cambie algunos fragmento de código para cambiar la imagen.
Utilice una función en el formulario Fmain igual a esta

PUBLIC FUNCTION cambiarimagen(valor AS String)
Pimagen.Picture = Picture[valor]
END


Entonces al darle click a cualquier ToolButton del formulario FDialogo llamara automáticamente a la función "cambiarimagen()"de fmain y le pasara el argumento valor. Es decir pasara el nombre de la imagen.

PUBLIC SUB ToolButton1_Click()
FMain.cambiarimagen("a.jpg")
ME.Close
END


Espero que entiendas lo que explique...!! Cualquiera cosa preguntas..!

Aquí te dejo los ejemplos
Descargar Ejemplo

Saludos Shell

Objetivo: Re: Caja De Dialogo Personalizada
Gracias a los dos.

A Jguardon:

El programa es muy sencillo no tiene mucha complicación.Es como lo ha puesto Chen_08.
Solo que con el control PictureBox.

En cuanto al evento MouseDown probe con un formulario y funciono perfectamente en un formulario principal con un PictureBox.
En cambio en el del ejemplo del libro, no se llega ni a producir el evento.

Añadi:

------
PUBLIC SUB Pic1_MouseDown()

Message("Evento MouseDown realizado")
Me.Close(1)

END
------

El evento nunca se produce.

A Chen_08:

Por la tarde lo hice con botones y funciono perfectamente, pero claro, ya no es el mismo ejemplo.

¿ Tanto ha cambiado gambas ?.

P.D A mi me gustaba más el dibujo de la mascota de antes.

Objetivo: Re: Caja De Dialogo Personalizada
Si gambas cambia cada vez que saca una nueva versión !


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.3813s (PHP: -78% SQL: 178%)
Consultas SQL: 44 - Debug off - GZIP Activado