Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 2
Ir a la página 1, 2  Siguiente
 
Diálogos En GAMBAS
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Diálogos En GAMBAS 
 
Este control requiere GB.FORM.DIALOG.

En gambas existen varias clases de dialogos.

diálogo Openfile, savefile y selectdirectory
Se usan  de la  siguiente forma

dim  Dialogo as dialog, Fichero  as  string
Dialogo.title="titulo de la ventana "
Dialogo.filter=[ "*.png;*.jpg;*.jpeg;*.bmp", "Imágenes";"*", "Todos los archivos" ]
Dialogo.path="/home"
if  Dialogo.openfile( )  then
   message.error(" el  usuario canceló" )
else
   Fchero=Dialogo.path
endif


En el caso de que se hayan seleccionado varios ficheros se debe mirar el array de Dialogo.path
dim  Dialogo as  dialog, Ficheros  as  string[]
Dialogo.title="titulo de la ventana "
Dialogo.filter=[ "*.png;*.jpg;*.jpeg;*.bmp", "Imágenes";"*", "Todos los archivos" ]
Dialogo.path=user.home
if  Dialogo.openfile( )  then
   message.error(" el  usuario canceló" )
else
   for each imagen  in  Dialog.path
      Ficheros=split( Dialogo.path, "\n" )
   next
end if


En este punto conviene mencionar aquí al objeto FILE.
Dim Fichero as string
Fichero=file.basename(dialog.path) ====> obtiene el nombre del fichero
Fichero=file.ext(dialog.path) ====> obtiene la  extensión del fichero
Fichero=file.name(dialog.path) ====> obtiene el nombre completo del fichero
Fichero=file.dir(dialog.path) ====> obtiene el path del fichero

selectcolor
Sirve para  elegir un color.
¡Ojo! el código de color no se corresponde con los colores constantes (color.blue por ejemplo)
Dialog.Color = ME. BackColor
IF Dialog.SelectColor() THEN RETURN
ME. BackColor = Dialog.Color


selectfont
Sirve para elegir una fuente
Dialog.Font = TextArea Edit.Font
IF Dialog.SelectFont () THEN RETURN
TextAreaEdit.Font  =  Dialog.Font

 



 
última edición por soplo el Miercoles, 16 Septiembre 2009, 19:03; editado 8 veces 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
en el primer caso pusiste:    Fchero=Dialogo .path  en lugar de FICHERO aun asi, me dice:

Class dialog is no creatable, alguna ideilla? o algun error noob?

Edito: me salia que Class dialog is no creatable porq no tenia habilitado el componente gb.form.dialog por si a alguien le sirve de ayuda

asi que ahora me dice otros dos errores, en las lineas:
PUBLIC SUB Button1_Click()
  DIM Dialogo AS NEW dialog, Fichero AS String
  'Dialogo.title = "Selecciona una imagen."
  'Dialogo.filter = "Imágenes (*.png;*.jpg ;* .gif;*.jpeg),  Todos los archivos  ( *.*)"
  'Dialogo.path = "/home"
  IF Dialogo.openfile() THEN
    message.error(" el  usuario canceló")
  ELSE
    Fichero = Dialogo.path
  ENDIF
END


Dialogo.title, el filter y el path, si las descomento me suelta un mensaje de error avisandome de que Dialog,title is static........ aqui si q me atranké :/
 



 
CanihoJR - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
Prueba así.

PUBLIC SUB Button1_Click()
 DIM Dialogo AS dialog, Fichero AS String

 Dialogo=new dialog
 Dialogo.title = "Selecciona una imagen."
 Dialogo.filter = [ "*.png;*.jpg;*.jpeg;*.bmp", "Imágenes";"*", "Todos los archivos" ]                        
 Dialogo.path = "/home"
 IF Dialogo.openfile() THEN
   message.error(" el  usuario canceló")
 ELSE
   Fichero = Dialogo.path
 ENDIF
END
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
nada, con ese ejemplo tampoco me sirve.... prové tb a ponerlo entre ( y ponerlo como filter() sin asignar y nada :/

el codigo q tengo es este:
PUBLIC SUB Button1_Click()
  'creo variable
  DIM Dialogo AS dialog
  DIM Ruta AS String
  
  'creo objeto dialogo.
  Dialogo = NEW dialog
  
  'doy propiedades a la ventana:
  'Dialogo.Title = "Selecciona una imagen."
  'Dialogo.Filter=["*.png;*.jpg;*.jpeg;*.bmp", "Imágenes"; "*", "Todos los archivos"]
  'Dialogo.path = "/home"
  IF Dialogo.openfile() THEN
    PictureBox1.Picture.Clear
  ELSE
    Ruta = Dialog.Path
    PictureBox1.Picture = Picture[Ruta]
  ENDIF
END


Con esas 3 lineas comentadas se me abre la ventana de dialogo, y puedo seleccionar la imagen, pero al cerrar la ventana de dialogo, ya sea dnadole a la X sin selecionar nada, dandole a cancelar o simplemente aceptando despues de seleccionar una imagen, me arroja error #11 y se me termina el programa o_O
 



 
CanihoJR - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
La clase Dialog es estática, es decir, no puedes crear instancias de ella con NEW

PUBLIC SUB Button1_Click()
    DIM Ruta AS String
  'doy propiedades a la ventana:
    Dialog.Title = "Selecciona una imagen."
    Dialog.Filter = ["*.png;*.jpg;*.jpeg;*.bmp", "Imagenes", "*.*", "Todos los ficheros"]
    ' he puesto la propiedad Stretch en True para que ajuste la imagen al picturebox
    Dialog.path = "/home"
    TRY PictureBox1.Picture.Clear ' no funciona, hay que investigar
    IF Dialog.openfile() THEN RETURN 'si cancelamos el dialogo, sale del procedimiento sin errores
    Ruta = Dialog.Path
    PictureBox1.Picture = Picture[Ruta]
END


Esta es la manera correcta de crear un diálogo. Pero no sé por qué no me limpia el PictureBox1!!!!

Saludos
 




===================
Jesús Guardón

Por favor, usemos el corrector ortográfico antes de pulsar el botón "Enviar".

"uo ǝs ʇɐu pıɟıɔıן ɐdɹǝupǝɹ ɐ dɹoƃɹɐɯɐɹ, soןo ɥɐʎ bnǝ dɹodouǝɹsǝןo"
 
jguardon - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
No había caído en ello. Corrijo el post inicial para que no genere mas errores.
 



 
soplo - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
Ajá ahora si que funciona solo me queda el tema de borrar el picturebox   ^^ voy a darle solucion aver si encuentro algo

Edito: ya que el utlimo post tb era mio, lo incluyo aqui

Si quereis que el Path se abra en el Home del usuario, seria asi:

Dialog.Path = User.Home

 



 
CanihoJR - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
Gracias Soplo, buen tutorial
 




===================
No podemos regresar
 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
muy bueno tu post, has logrado limpiar el picturebox porq he tratado de hacerlo y nada..

he probado con  picturebox.picture= NULL y nadaa

gracias!!
 



 
emilalberto - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Diálogos En GAMBAS 
 
Esto funciona en mis programas:

PictureBox1.Picture = NULL
PictureBox1.Refresh
 

 




===================
Cómo programar con Gambas

Speed Books: informática libre.
 
fabianfv - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes REPORTES EN GAMBAS lnoriega General 21 Viernes, 24 Junio 2011, 10:26 Ver último mensaje
shordi
No hay nuevos mensajes IREPORT EN GAMBAS mychemical1922 General 0 Jueves, 10 Noviembre 2011, 20:12 Ver último mensaje
mychemical1922
No hay nuevos mensajes EZCAP Y GAMBAS celtilander General 10 Sabado, 04 May 2013, 10:50 Ver último mensaje
celtilander
No hay nuevos mensajes Hilos En GAMBAS netking86 General 5 Lunes, 11 Noviembre 2013, 20:10 Ver último mensaje
mckaygerhard
 

Publicar nuevo tema  Responder al tema  Página 1 de 2
Ir a la página 1, 2  Siguiente

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