Mostrando las entradas con la etiqueta Componente gb.settings. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Componente gb.settings. Mostrar todas las entradas

lunes, 26 de octubre de 2020

USE (scripter)

 

En gambas3 podemos generar script, aquí un ejemplo usando "USE". Este script lo que hace es crear una ventana (form) con titulo hola mundo y cuando cierra guarda la posición del formulario y sus dimensiones, esto lo hacemos por medio de gb.settings, en el evento open leemos los datos antes guardados por settings.

Lo primero que debemos hacer es el encabezado del script usando esta linea:

#!/usr/bin/gbs3

para localizar gbs3 con seguridad ejecutamos: which gbs3

Ejemplo: 

juan@debian:~$ which gbs3
/usr/bin/gbs3

Lo segundo declarar mediante USE los componentes de gambas que vamos a necesitar en este caso use dos de los mas comunes y vitales gb.qt5 y gb.settings.

El primero para usar formularios y el settings para recordar configuraciones.
Cada componente sera un string entre comillas y separado por coma de los demás que se agreguen.

Ejemplo: Use "gb.qt5", "gb.settings"


Ayuda:

USE "Componente" [, "Componente" ...]

Solo para Gambas Scripting con gbs3.
Declara que una clase utilizará uno o varios componentes.
Esta declaración debe estar escrita en el encabezado de la clase.
Los componentes se especifican mediante cadenas. Se cargarán la primera vez que se use la clase.

----- Comienzo del Script -----

#!/usr/bin/gbs3

Use "gb.qt5", "gb.settings"

Private FormX As Form

Public Sub Main()

  Print "Hello world"
  Print "Ejecutando Sub Main"

  formx = New Form As "ev"

  With FormX
    .Width = 200
    .Height = 100
    .Title = "Hola Mundo"
    .Show
  End With

End

Public Sub ev_Close()

  Print "Evento Close detectado"
  Settings.Write(FormX)
  Settings.Save

End

Public Sub ev_Open()

  Print "Evento Open detectado"
  Settings.Read(FormX)

End 

----- Fin del Script ----- 

 

Crea un archivo de texto simple con nombre "scripterHolaMundo" y pega todo el código del script.

Dale permisos de ejecución con: chmod +x scripterHolaMundo

Ejecútalos estando en la carpeta donde se encuentra el script con:

./scripterHolaMundo


Bueno espero les sirva para sus aprendizajes, si algo no entienden o lo he explicado mal por favor escriban un comentario, saludos.

miércoles, 24 de febrero de 2016

Usando Message.Optional

Dejo este ejemplo de Message.optional tal vez poco conocido.

Saludos y comenten.


' gambas class file

'by postapase
'necesario activar componente gb.settings, sino tira error (identificador desconocido:Settings)
'osea Message.Optional trabaja en conjunto con settings (gb.settings)
'en el archivo settings ubicado en /home/tu.usuario/.config/gambas3 se ve asi:
'[HiddenMessage]
'VerMensaje = True

'[HiddenMessage] es el nombre de la key predeterminada de Message.Optional
'VerMensaje es el nombre del valor que nosotros elegimos.

Public Ver As Boolean

Public Sub Form_Open()

Ver = Settings["HiddenMessage/VerMensaje", False]
Message.Optional("Esto es un ejemplo de Message.Optional!", "Aceptar", "VerMensaje")

End

Public Sub Button1_Click()

Settings["HiddenMessage/VerMensaje"] = False
Settings.Save

End

Public Sub Button2_Click()
Form_Open()
End


Descargar Código fuente: DesactivarActivarAviso-0.0.1.tar.gz?dl=0



Activar o Desactivar sonidos en nuestra aplicación



Hola novatos!!! jajaja
Les traigo un pequeño programita que si lo usan en una programa grande seguro les sera de utilidad.
Trata de la opcion de desactivar todos los sonidos de nuestro programa o activarlos para asi poder oirlos.
A experimentar mucho que es como se aprende.

Saludos y comenten.


' gambas class file

'by postapase
'necesario componentes gb.settings y gb.sdl2.audio

Public bPermisoSonido As Boolean 'Variable que maneja si se pueden o no ejecutar sonidos
Public Clic As Sound 'declaramos una variable de sonido que se puede acceder de cualquier lado.
Public ErrorX As Sound 'declaramos una variable de sonido que se puede acceder de cualquier lado.


Public Sub Form_Open()

Clic = Sound.Load("clic.ogg") 'asignamos a la variable de sonido Clic un sonido X
ErrorX = Sound.Load("error.ogg") 'asignamos a la variable de sonido ErrorX un sonido X
bPermisoSonido = Settings["Opciones/PermitirSonido", True] 'leemos el valor de PermitirSonido y lo asignamos a bPermisoSonido.
'en caso de no existir ningun valor en el archivo settings en PermitirSonido le asignamos true.

EsteIcono() 'llamamos a la funcion.

End

Public Sub btnSonidos_Click()

bPermisoSonido = Not bPermisoSonido 'not le asigna a bPermisoSonido el valor contrario al que tiene.
'si bPermisoSonido es true lo dejara en false
'si bPermisoSonido es false lo dejara en true

EjecutarSonido(Clic) 'llama a la funcion EjecutarSonidos() y entre los parentesis le asignamos el sonido a ejecutar.

EsteIcono() ' funcion que se encarga de visualizar un icono dependiendo de la variable bPermisoSonido.

Settings["Opciones/PermitirSonido"] = bPermisoSonido 'asigna el valor de bPermisoSonido a PermitirSonido del archivo settings
Settings.Save ' guarda los cambios ya de la orden anterior, si esta orden no esta settings la guarda al cerrar el programa.

End

Public Sub EsteIcono() 'se encarga de mostrar uno u otro icono dependiendo de bPermisoSonido.

If bPermisoSonido Then
btnSonidos.Picture = Picture["icon:/64/volume"]
Else
btnSonidos.Picture = Picture["icon:/64/muted"]
Endif

End


Public Sub EjecutarSonido(sonido As Sound)

If bPermisoSonido Then 'si bPermisoSonido es true ejecuta el sonido sino no hace nada.
Try sonido.Play 'intenta ejecutar el sonido si da error el programa no se cuelga y el if siguiente muestra el detalle del error.
If Error Then Message.Warning(Error.Text & gb.NewLine & Error.Where & gb.NewLine & Error.Code)
Endif

End

Public Sub Button2_Click()
EjecutarSonido(Clic) 'llama a la funcion
End

Public Sub Button1_Click()
EjecutarSonido(ErrorX) 'llama a la funcion
End




Código fuente: ActivarDesactivarSonidos-0.0.1.tar.gz






martes, 14 de julio de 2015

Recordar lista de palabras en un combobox



' gambas class file

' by postapase
' Activar complemento settings

Public Sub Form_Open()
Me.Center ' el formulario se abre centrado en la pantalla o escritorio
' toma el string anteriormente guardado en el archivo settings,
' separa los string por sus comas generando un string[] y lo asigna
' a la lista del combobox que es una variable de tipo string[]
cbxFiltro.List = Split(Settings["Recientes/Diccionarios"], ",")
End

Public Sub btnBuscar_Click()
Dim Buscar As String

Buscar = cbxFiltro.Text

If cbxFiltro.Count < 4 Then 'si la cantidad de string contenidas en el lista del combobox es menor que 4 ejecuta las lineas siguientes
'el 4 sera el número máximo de palabras a guardar en la lista se puede usar 10, 15 o 20 lo que vos quieras
' si cambias el cuatro por otro valor cambia tambien despues del else en cbxFiltro.Remove(valor-1)
If cbxFiltro.Find(Buscar) = -1 Then 'cbxFiltro.Find(Buscar) devuelve o retorna -1 sino encuentra coincidencias
' si la encuentra devuelve el número de index de la lista
cbxFiltro.Add(Buscar, 0) ' como cbxFiltro.Find(Buscar) retorno -1 significa que la palabra no esta por lo tanto la agregamos
Endif
Else
' si cbxFiltro.Count es mayor que 4 ejecuta estas lineas
cbxFiltro.Remove(3) 'busca en la lista el valor ingresado mas viejo que es el de mas abajo y lo elimina (aqui tal vez sea mejor poner cbxFiltro.Remove(cbxFiltro.List.Max) )
'para dar lugar a la nueva palabra
If cbxFiltro.Find(Buscar) = -1 Then
cbxFiltro.Add(Buscar, 0) 'agrega la nueva palabra en la lista del combobox y la indexa en el primer lugar
Endif
Endif

GuardarRecientes() ' ejecuta o llama a esta subrutina

cbxFiltro.Text = "" ' borra el texto del combobox
cbxFiltro.SetFocus 'da el foco al combobox dejando el cursor parpadeando

End

Private Sub GuardarRecientes() ' rutina que guarda los string de la lista en un string solo separado por comas
Dim palabra, DicRecientes As String

If cbxFiltro.Count > 0 Then ' si la lista NO esta vacía ejecuta las lineas siguientes
For Each palabra In cbxFiltro.List 'recorre la lista del combobox que es una variable de tipo string[]
DicRecientes &= palabra & "," ' y se forma un string con las palabras a recordar separadas por comas
Next
Settings["Recientes/Diccionarios"] = Left(DicRecientes, Len(DicRecientes) - 1)
'elimina el último caracter del string que es una coma y lo guarda en el archivo settings
Else
'si la lista esta vacia guarda un string vacío
Settings["Recientes/Diccionarios"] = "" 'borra la string que contiene la lista de palabras
Endif

Settings.Save ' guarda ya los cambios en el archivo settings

End

Public Sub btnBorrar_Click()
cbxFiltro.Text = "" ' borra el texto del combobox
cbxFiltro.SetFocus 'da el foco al combobox dejando el cursor parpadeando
cbxFiltro.Clear 'borra la lista del combobox
Settings["Recientes/Diccionarios"] = "" 'borra el string que contiene la lista de palabras
Settings.Save ' guarda ya los cambios en el archivo settings
End

Descargar: Recordarlistacombobox-0.0.1.tar.gz


lunes, 21 de abril de 2014

Crear y usar nuestro propio archivo de configuración

' Gambas class file

' crea un nuevo proyecto, después
' activar gb.settings  (proyecto --> propiedades --> componentes) gambas 3.5.3
' declaramos la variable de tipo settings personalizada

Public Mi_Archivo_de_configuracion As Settings



Public Sub Form_Open()

' inicializamos la variable, le asignamos su ruta(User.Home)
' y el nombre que tendrá nuestro archivo, si le ponemos un punto antes del
' nombre sera una archivo oculto /.My_setting
Mi_Archivo_de_configuracion = New Settings(User.Home & "/My_setting")

' esta linea lo que hace es definir una Key(MisDatosPersonales) de tipo string,
'  y seguido y después de la barra un nombre relacionado a la información que almacenara
'  el dato que tendremos que poner despues del = es de tipo variant, puede ser una cadena o string,
'  un número, una variable de tipo boolean etc

Mi_Archivo_de_configuracion["MisDatosPersonales/MiNombre"] = "postapase"

' la próxima linea lo que hace es guardar el dato inmediatamente ,
' pues si no el dato se graba cuando el programa es cerrado (creo jaja)

Mi_Archivo_de_configuracion.Save

' ahora el dato se puede leer en:
' /home/tu_usuario/My_setting
' asi se vera en el archivo My_setting
' [MisDatosPersonales]
' MiNombre = "postapase"


End

bueno espero que les haya sido útil, así como este archivo de configuración de pueden hacer varios

http://gambasdoc.org/help/comp/gb.settings?es

miércoles, 16 de abril de 2014

Recordar elecciones de checkbox



' Gambas class file

' antes que nada el componente gb.Settings( gestión de archivo de configuración debe estar activado)
' Proyecto, propiedades, componentes y buscas gb.Settings y activarlo

' estas variables de tipo boolean serán las que guardaremos en el archivo de configuración,
' si ellas están en true los botones se verán, si en false los botones no se verán, pues al estar
' en true los checkbox en su propiedad value estarán en true y ejecutaran su código interno.
' (/home/aqui ira tu nombre de usuario/.config/gambas3/checkbox.conf
' veras algo asi:
' [Visualizar]
' VerBoton1 = True
' VerBoton2 = True



Public VerBoton1 As Boolean
Public VerBoton2 As Boolean

Public Sub CheckboxVerBoton1_Click()
' al hacer clic en el checkbox, el checkbox analizara si su propiedad value es true o false
' sera true cuando el cuadrado tenga la v del ok y sera falso cuando este en blanco.
  If CheckboxVerBoton1.Value = True Then
     btn1.Visible = True
     VerBoton1 = True
  Else
    btn1.Visible = False
    VerBoton1 = False
  Endif
' con estas lineas guardamos en la variable de tipo Boolean  VerBoton1 si es igual a True o False
 Settings["Visualizar/VerBoton1"] = VerBoton1
 Settings.Save ' guarda en el archivo de configuracion ahora mismo, sino se pone esta linea
 ' se guardara cuando el programa se cierre

End

Public Sub CheckboxVerBoton2_Click()

  If CheckboxVerBoton2.Value = True Then
    btn2.Visible = True
    VerBoton2 = True
  Else
   btn2.Visible = False
   VerBoton2 = False
  Endif
   
 Settings["Visualizar/VerBoton2"] = VerBoton2
 Settings.Save

End
Public Sub Form_Open()
  ' con estas dos lineas leemos el archivo Settings para saber
  '  que valores tienen las variables VerBoton1 y VerBoton2
  VerBoton2 = Settings["Visualizar/VerBoton2"]
  VerBoton1 = Settings["Visualizar/VerBoton1"]
  
  If VerBoton1 = True Then
    CheckboxVerBoton1.Value = True
  Else
    CheckboxVerBoton1.Value = False
  Endif
 
   If VerBoton2 = True Then
    CheckboxVerBoton2.Value = True
  Else
    CheckboxVerBoton2.Value = False
  Endif
End

https://www.dropbox.com/s/pwa787c6gxdgtvi/checkbox-0.0.1.tar.gz