Mostrando las entradas con la etiqueta Export. Mostrar todas las entradas
Mostrando las entradas con la etiqueta Export. Mostrar todas las entradas

jueves, 26 de enero de 2017

Control fbcolor by postapase



Interfaz gráfica de la clase (form)



' gambas class file

'by Postapase 26 enero 2017
'http://novatocodegambas.blogspot.com.uy/
'control fbcolor (foreground, background color)

Event CambioTrazo
Event CambioFondo
Event EnterTrazo
Event EnterFondo
Event Reseteo
Event EnterReseteo


Public Sub cbtnTrazo_Change()

Raise CambioTrazo

End

Public Sub cbtnFondo_Change()

Raise CambioFondo

End

Public Sub tbtnReseteo_Click()

Raise Reseteo

End

Public Sub cbtnTrazo_Enter()

Raise EnterTrazo

End

Public Sub cbtnFondo_Enter()

Raise EnterFondo

End

Public Sub tbtnReseteo_Enter()

Raise EnterReseteo

End





Clase fbcolor

' gambas class file

'by Postapase 26 enero 2017
'http://novatocodegambas.blogspot.com.uy/
'control fbcolor (foreground y background color)

Export

Inherits UserControl

Public Const _Properties As String = "*,Trazo{Color},Fondo{Color},TrazoPredeterminado{Color},FondoPredeterminado{Color}"
Public Const _DefaultEvent As String = "Modificacion"
Public Const _DefaultSize As String = "18,4"
Public Const _Group As String = "Chooser"

Event Reseteo
Event Modificacion

Property Trazo As Integer
Property Fondo As Integer
Property TrazoPredeterminado As Integer
Property FondoPredeterminado As Integer

Private $ffbcolor As Ffbcolor
Private $Trazo As Integer
Private $Fondo As Integer
Private $TrazoPredeterminado As Integer
Private $FondoPredeterminado As Integer

Public Sub _new()

$ffbcolor = New Ffbcolor(Me) As "Ev"
Me.Proxy = $ffbcolor
Reinicio()

End

Public Sub Ev_CambioTrazo()

$Trazo = $ffbcolor.cbtnTrazo.Value
Raise Modificacion

End

Public Sub Ev_CambioFondo()

$Fondo = $ffbcolor.cbtnFondo.Value
Raise Modificacion

End

Public Sub Ev_Reseteo()

Reinicio()
Raise Reseteo

End

Public Sub Reinicio()

$Fondo = $FondoPredeterminado
$Trazo = $TrazoPredeterminado
$ffbcolor.cbtnFondo.Value = $Fondo
$ffbcolor.cbtnTrazo.Value = $Trazo

End

Public Sub Ev_EnterTrazo()

$ffbcolor.cbtnTrazo.Tooltip = "Color de Trazo (clic para cambiar)"

End

Public Sub Ev_EnterFondo()

$ffbcolor.cbtnFondo.Tooltip = "Color de Fondo (clic para cambiar)"

End

Public Sub Ev_EnterReseteo()

$ffbcolor.tbtnReseteo.Tooltip = "Poner colores predeterminados"

End

Private Function Trazo_Read() As Integer

Return $Trazo

End

Private Sub Trazo_Write(Value As Integer)

$Trazo = Value
$ffbcolor.cbtnTrazo.Value = $Trazo
Raise Modificacion

End

Private Function Fondo_Read() As Integer

Return $Fondo

End

Private Sub Fondo_Write(Value As Integer)

$Fondo = Value
$ffbcolor.cbtnFondo.Value = $Fondo
Raise Modificacion

End

Private Function TrazoPredeterminado_Read() As Integer

Return $TrazoPredeterminado

End

Private Sub TrazoPredeterminado_Write(Value As Integer)

$TrazoPredeterminado = Value
Raise Modificacion

End

Private Function FondoPredeterminado_Read() As Integer

Return $FondoPredeterminado

End

Private Sub FondoPredeterminado_Write(Value As Integer)

$FondoPredeterminado = Value
Raise Modificacion

End



Dropbox fbcolor-0.1.1.tar.gz

jueves, 19 de enero de 2017

Control FontName by postapase


Control pensado para seleccionar tipo de fuente rapidamente y comodamente, con la opción de poner fuente predeterminada con un solo clic.

parte gráfica del control (ffontname) formulario

' gambas class file

'by postapase 18 de enero 2017
'http://novatocodegambas.blogspot.com.uy/
'control FontName

Event Reset
Event Seleccion
Event Enter

Public Sub Form_Open()

End

Public Sub btnFontDefault_Click()

Raise Reset

End

Public Sub cbxNombreFuentes_Click()

Raise Seleccion

End

Public Sub btnFontDefault_Enter()

Raise Enter

End



clase fontname

' gambas class file

'by postapase 18 de enero 2017
'http://novatocodegambas.blogspot.com.uy/
'control FontName

Export

Inherits UserControl

Public Const _Properties As String = "*,Predeterminada,Seleccionada,Index"
Public Const _DefaultEvent As String = "Seleccion"
Public Const _DefaultSize As String = "32,4"
Public Const _Group As String = "Chooser"

Event Seleccion
Event Reseteo ''Selecciona la fuente predeterminada de la aplicación

Property Predeterminada As String
Property Seleccionada As String
Property Index As Integer

Private $xfontname As Ffontname
Private $Predeterminada As String
Private $Seleccionada As String
Private $Index As Integer
Private $ListaFuentes As New String[]

Public Sub _new()

$xfontname = New Ffontname(Me) As "Ev"
$Predeterminada = Application.Font.Name
$Seleccionada = $Predeterminada
Me.Proxy = $xfontname.cbxNombreFuentes
ActualizarFuentes()

End

Public Sub Ev_Reset()

Reinicio()

Raise Reseteo

End

Public Sub Ev_Seleccion()

$Seleccionada = $xfontname.cbxNombreFuentes.Current.Text
$Index = $xfontname.cbxNombreFuentes.Index

Raise Seleccion

End

Public Sub EV_Enter()

$xfontname.btnFontDefault.Tooltip = "Seleccionar fuente predeterminada [ " & $Predeterminada & " ]"

End

Public Sub ActualizarFuentes()

Dim NombreFuente As String

For Each NombreFuente In Fonts
$ListaFuentes.Add(NombreFuente)
Next

$xfontname.cbxNombreFuentes.List = $ListaFuentes
$xfontname.cbxNombreFuentes.Add($Predeterminada, 0)

End

Private Function Predeterminada_Read() As String

Return $Predeterminada

End

Private Sub Predeterminada_Write(Value As String)

$Predeterminada = Value

End

Private Function Seleccionada_Read() As String

Return $Seleccionada

End

Private Sub Seleccionada_Write(Value As String)

$Seleccionada = Value

End

Private Function Index_Read() As Integer

Return $Index

End

Private Sub Index_Write(Value As Integer)

$Index = Value
$xfontname.cbxNombreFuentes.Index = $Index

End

Public Sub Reinicio()

$xfontname.cbxNombreFuentes.Index = 0
$Index = 0

En


Saludos y espero sus opiniones.

Necesario estar registrado en  https://www.gambas-es.org/
Descargar 

Dropbox:  fontname-0.1.2.tar.gz

miércoles, 18 de enero de 2017

FontName control supersimplificado




Este pequeño control surge de tener una lista completa de todos los nombres de fuentes disponibles comodamente en un combobox.
Pero a veces, podríamos necesitar ese combobox en muchos formularios.
Entonces es ahí donde hacer una clase tiene sentido,su poder o ventaja (ahorro de código) pues sera una tarea repetitiva.


' gambas class file

'by postapase
'http://novatocodegambas.blogspot.com.uy/

Export

Inherits ComboBox

Public Const _DefaultSize As String = "32,4"
Public Const _Group As String = "Chooser"

Private $ListaFuentes As New String[]

Public Sub _new()

Me.ReadOnly = True
Me.List = ObtenerFuentes()

End

Public Sub ObtenerFuentes() As String[]

Dim NombreFuente As String

For Each NombreFuente In Fonts
$ListaFuentes.Add(NombreFuente)
Next

Return $ListaFuentes

End


El nombre de la fuente seleccionada la obtenemos con:
FontName1.Current.Text

La lista de nombres de fuentes estan en la propiedad list de FontName:
FontName1.List



Descargar control

miércoles, 29 de abril de 2015

Ejemplo simple de programacion de una clase

Clase Registro




' gambas class file

' by postapase

Export

Property Lugar As String '' Devuelve o muestra la carpeta que contiene el archivo de registros.
Property Read Nombre As String '' Devuelve o muestra el nombre del archivo de registros.
Property Read Ruta As String '' Devuelve o muestra la ruta completa del archivo de registros.

Private sLugar As String
Private sNombreX As String
Private sRuta As String


Public Sub _new(sDir As String, sNombre As String)

If Exist(sDir) = True Then
sLugar = sDir
sNombreX = sNombre
Lugar_Write(sLugar)
sRuta = sLugar &/ sNombre

If Exist(sRuta) = False Then
File.Save(sRuta, "*** Creado(" & Now & ") ***" & gb.NewLine)
Endif
Else
Message.Error("Lugar invalido!")
Return
Endif

End

Private Function Lugar_Read() As String
Return sLugar
End

Private Sub Lugar_Write(Value As String)
sLugar = Value
End

Private Function Nombre_Read() As String
Return sNombreX
End

Private Function Ruta_Read() As String
Return sRuta
End

Public Sub Agregar(Mensaje As String) '' Agrega un mensaje al archivo de registros.
Dim ArchivoX As File

If Exist(sRuta) = False Then
Return
Endif

If IsNull(Mensaje) Then
Return
Endif

ArchivoX = Open sRuta For Append
Print #ArchivoX, "(" & Now & ") " & Mensaje
Close #ArchivoX

End

Public Sub Borrar() '' Borra todo el contenido del archivo de registros (precaucion).

If Access(sLugar, gb.Write) = True Then
If Exist(sRuta) = True Then
Try Kill sRuta
File.Save(sRuta, "*** Creado(" & Now & ") ***" & gb.NewLine)
Else
File.Save(sRuta, "*** Creado(" & Now & ") ***" & gb.NewLine)
Endif
Endif

End


Código fuente en servidor de Gambas Farm

lunes, 17 de noviembre de 2014

Mi primer componente llamado animales

Buenas aquí ando re feliz pues e logrado crear mi primer componente y lo comparto con ustedes novatos igual que yo.
Hice un planteo en el foro http://www.gambas-es.org/  en este post .
Obtuve dos respuestas una muy interesante sin llegar a ser lo que pedi exactamente y la otra me mandaron a estudiar :( .
Pero... soy curioso y cuando ando con ganas y paciencia lo que busco generalmente lo encuentro pues bien hoy fue uno de esos días.

Primero que nada creamos un nuevo proyecto tildando en Programar un componente, elegimos en tipo de proyecto Aplicación gráfica GTK+, elegimos donde guardaremos el proyecto y que nombre tendra, en mi caso le puse animales.



Segundo borramos las dos clases que el gambas crea de forma predeterminadas llamadas CControl y CContainer ubicadas en la carpeta fuente.
También borramos las dos imágenes png de la carpeta Control ubicada en la carpeta proyectos. en la carpeta control agregamos una imagen a gusto y la renombramos con el nombre de la clase que crearemos en mi caso es animales

Tercero creamos una nueva clase llamada animales (en mi caso) en la carpeta fuentes.

Ahora les dejo las siguientes imagenes y ustedes sabran que hacer osea copiar el codigo en la clase y en el formulario FTest







Bien después de probado el componente en el formulario FTest y todo funciona como queremos, tenemos que crear el archivo de instalación para compartir nuestro componente con el resto del mundo algo que da mucha gratificación jaja y eso que este componente solo sirve para dar nociones de como crear un componente pues  en si no hace nada interesante.

Vamos a Proyecto-->Crear-->Paquete de instalación




y seguimos los siguientes pasos, terminado el proceso se crearan los paquetes dentro de una carpeta y vamos a instalar el paquete deb en mi caso seria postapase-animales_0.0.1-0ubuntu1_all.deb

Después de instalado creamos un nuevo proyecto, luego vamos a Proyecto-->Propiedades-->Componentes y tildamos en animales que es nuestro componente recién creado.






En esta ultima imagen podemos apreciar el componente animales en accion y funcionando perfectamente.

Espero que les sirva para sus estudios y pruebas novatos de gambas jajaja.

Saludos.

Código fuente del componente animales: Animales-0.0.1.tar.gz