Comunidad Gambas-es
Settings, cuando por error no escribimos bien la clave - Versión para impresión

+- Comunidad Gambas-es (https://gambas-es.org)
+-- Foro: Gambas (https://gambas-es.org/forum-3.html)
+--- Foro: General (https://gambas-es.org/forum-4.html)
+--- Tema: Settings, cuando por error no escribimos bien la clave (/thread-1155.html)



Settings, cuando por error no escribimos bien la clave - Shell - 30-12-2022

Buenas!.

Si al cargar falla una, fallan todas, ¿ no ?.

A la hora de cargar, me dio problema todas por no escribir igual la clave de una sola y no cargó ni una. Quizás esta era el primer setting.

Haré mas preguntas sobre settings más adelante, antes buscaré en el foro....como tiene que ser. Rolleyes
Aun sigo sin comprender bien su uso y por ahora lo uso para dejar el estado de un formulario de una manera concreta. Pero supongo que tiene más usos.

Saludos


RE: Settings, cuando por error no escribimos bien la clave - Shordi - 30-12-2022

Cita:Si al cargar falla una, fallan todas, ¿ no ?.
No, falla la que falla... salvo que la url del fichero ·conf sea errónea


RE: Settings, cuando por error no escribimos bien la clave - Shell - 30-12-2022

(30-12-2022, 18:50)Shordi escribió: salvo que la url del fichero ·conf sea errónea

¿ Es que eso se puede cambiar ?. Si siempre escribe en /home/usuario/.config/gambas3


RE: Settings, cuando por error no escribimos bien la clave - Shordi - 31-12-2022

No. Ese es el path por defecto. Puedes crear todos los archivos settings que desees así:

Código:
Private $tema as settings

public sub form_open()

 $tema = New Settings(mconf.ConfigPath &/ "Themes/" &/ Tema.Text & ".conf")
....
....
Public Sub bGuardar_Click()

  $tema["Theme/Font"] = Fuente.Value
  $tema["Theme/Foreground"] = Foreground.Value
  $tema["Theme/Background"] = Background.Value
  $tema["Theme/Forecolor"] = Forecolor.Value
  $tema["Theme/Backcolor"] = Backcolor.Value
  $tema["Theme/Bars"] = bars.Value
  $tema["Theme/BarsColor"] = barscolor.Value
  $tema["Theme/BarsBgColor"] = barsbgcolor.Value
  $tema["Theme/BgAnimated"] = BgAnimated.Value

  $tema.Save()

End

La línea del ejemplo está extraída del formulario fThemeEditor de mi proyecto gbAmp. La variable $tema no tiene por qué ser privada, claro, puede ser local o lo que quieras.

En este caso se crea un archivo llamado .config/gbAmp/Themes/<tema_elegido_en_pantalla>.conf" y la aplicación contiene tantos archivos .conf como temas haya creado el usuario.

Saludos.