Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Guardar Como...
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Guardar Como... 
 
hola amigos de gambas ase 2 semanas que instale gambas 3 y empese a crear un prosesador de texto (una onda notepad de windows) pero tengo una pequeña duda, quiero que el documento se guarde con formato .clt por default, pero si cambia el usuario ese formato en el Dialog.Filter lo guarde como un documento normal. asta aca el codigo que tengo es:

Public Sub Save(Optional bSaveAs As Boolean)
  Dim destino As String
  If bSaveAs Or Not $sPath Then
     Dialog.Filter = [".clt", ("CLText")]
    If Dialog.SaveFile() Then Return
    SetPath(Dialog.Path)
  Endif
  destino = Dialog.Path & ".clt"
  File.Save(destino, txtNotepad.Text)
  
End


el problema que tiene es que por mas que el usuario seleccione All Files sige guardandolo eb formato .clt.
 



 
kingworld - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar Como... 
 
Hola!.

Prueba a quitar esta parte.

  destino = Dialog.Path & ".clt"
  File.Save(destino, txtNotepad.Text)  
 


Es como si lo de arriba no le importase y continuase haciendo esas instrucciones.


Otro ejemplo:

Formulario con tres botones y un TextArea.

PUBLIC SUB _new()

END

PUBLIC SUB Form_Open()

END


PUBLIC SUB btnAbrir_Click()  
  txtTexto.Text = ""
  Dialog.Title = "Elige un archivo"  
  Dialog.Filter = ["*.txt;", "Archivos de texto"]  
  IF Dialog.OpenFile() THEN
    RETURN
  ELSE
   txtTexto.Text = File.Load(Dialog.Path)
  ENDIF
  
END

PUBLIC SUB btnGuardar_Click()
  Dialog.Title = "Elige un archivo"  
  Dialog.Filter = ["*.txt;", "Archivos de texto"]  
  IF Dialog.SaveFile() THEN
    RETURN
  ELSE
    File.Save(Dialog.Path, txtTexto.Text)
  ENDIF
END


PUBLIC SUB btnCerrar_Click()
  ME.Close
END

 


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: Guardar Como... 
 
Shell escribió: [Ver mensaje]
Hola!.

Prueba a quitar esta parte.

  destino = Dialog.Path & ".clt"
  File.Save(destino, txtNotepad.Text)  
 




hola man gracias por tu respuesta, pero lamentablemente si borro esa linea no me guarda el arcivo en .clt como default
 



 
kingworld - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar Como... 
 
kingworld:

El problema lo tienes en esta linea:
destino = Dialog.Path & ".clt"

Ya que de esa manera "fuerzas" a que el nombre siempre se le añada al final la extensión ".clt"


Cuando dices
Citar:
pero si cambia el usuario ese formato en el Dialog.Filter lo guarde como un documento normal

A que te refieres como "normal", ¿a ".txt"?

Si tienes claro que terminación admite tu programa para guardar los datos, podias comprobar si el usuario ha elegido alguna de ellas y luego si no ha elegido ninguna de ellas, ponerle como "default", la ".clt".

Te pongo un código de prueba:
    Dim destino As String

    Dialog.Filter = [".clt", ("CLText"), ".txt", ("TEXT"), ".cpp", ("Cplusplus")]

    If Dialog.SaveFile() Then Return

    If InStr(Upper$(Dialog.Path), Upper$(".clt")) <> 0 Then
        '(1) el nombre contiene .clt
        destino=dialog.path
    Else
        'sino compruebo....
        If InStr(Upper$(Dialog.Path), Upper$(".cpp")) = 0 And InStr(Upper$(Dialog.Path), Upper$(".txt")) = 0 Then
            '(2) añado la terminacion .clt por defecto
            destino = Dialog.Path & ".clt"
         ELSE
           '(3) el nombre que ha puesto el usuario contiene .cpp o .txt        
           destino=dialog.path
        Endif

    Endif
 


De esta forma:
1) si el nombre que has introducido: contiene .clt, no hace nada, el nombre queda tal como lo ha introducido.
2) si el nombre que ha introducido no contiene .cpp ni .txt, entonce le añade .clt (el default que llamas tu)
3) el el caso de que contenga .cpp o .txt, el nombre lo dejara igual


Nota:
En gnulinux no es igual que windows, a la hora de nombrar las archivos.

En windonws Hola.txt es igual a hOla.TXT
En gnu/linux  no son iguales....  Gnu/Linux distingue entre mayusculas y minusculas
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
última edición por jsbsan el Lunes, 21 May 2012, 18:43; editado 1 vez 
jsbsan - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar Como... 
 
gracias man me sirvio solo una cosita mas, hay alguna manera para que el usuario si selecciona en Dialog.Filter = [".clt", ("CLText"), ".txt", ("TEXT"), ".cpp", ("Cplusplus")] algun formato se le agrege ese formato al archivo.

mira la imagen para que veas lo que me refiero http://img62.imageshack.us/img62/9959/screenshotanx.png hay alguna forma de lograr eso?
 



 
kingworld - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar Como... 
 
Vamos a ver, con los cuadros de dialogos que trae por defecto gambas (llamemoles "standards",  ese botón lo que hace es "filtrar" los ficheros del directorio que cumplan que su extensión sea la indicada (por ejemplo ".txt") para mostrarlos.

Como tu quieres otra cosa, que un boton indique cual va a ser la extension  que tenga el fichero que deseas guardar, no lo puedes hacer con los cuadros de dialogos "standard" que trae gambas, tienes  que hacerte tu propio cuadro de dialogo, y en el poner un combo (por ejjemplo) donde el usuario eliga la terminación del archivo

Para ello tienes que usar crear un formulario y añadirles los componentes "Dirview" o el "DirChoose"  y  el "Fileview" , botones, combobox, ... y te puede quedar una cosa asi:
micuadrodedialogo

Uploaded with ImageShack.us

Luego hay que añadirle el codigo para que guarde, cancele,, etc, y tendras tu propio cuadro de dialogo personalizado.
 




===================
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: Guardar Como... 
 
una ultima duda como ago para que el new form me tome los datos de el otro form? ya que nesesito guardar el contenido de la textarea de el otro formulario
 



 
kingworld - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Guardar Como... 
 
En el foro hay preguntas muy parecidas y solucionadas de como pasar valores de un formulario a otro, usa el boton "Buscar" del foro rellena el formulario, y seguro que encontraras varias soluciones... !! hay que aprovechar la información que contiene el foro !!   


Nota:
Si te surge alguna duda antes de preguntar, lo mejor es buscar en el foro ya que hay muchas cosas ya respondidas...!!!  y si no lo encuentras abre un nuevo tema.

Edito:
Bueno como el tema tiene mucha "miga", te dejo el enlace donde lo explican:

http://foro.gambas-es.org/viewtopic...ores+formulario

De todos modos, es bueno que uses la opcion de "Buscar" del foro, ya que vas a encontrar mucha información... (al final los usuarios siempre le surgen las mismas dudas).
 




===================
Blog personal
Web: SoloGambas seleccion de articulos dedicados a Gambas
Visita el Curso de Gambas3 ¡¡¡Gratuito!!!
 
última edición por jsbsan el Miercoles, 23 May 2012, 16:40; editado 1 vez 
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