miércoles, 18 de marzo de 2015

URLLable


URLLable (nueva clase en gambas 3.7)

Ya tenemos disponible la nueva versión de gambas 3.7 y entre otras novedades importantes tenemos la de una nueva clase llamada URLLabel.

Con esta clase podemos muy fácilmente añadir un link para que el usuario vea una pagina de internet X, solamente modificando dos de sus propiedades de escritura y lectura que son Link, en donde debemos poner el enlace o Link exacto sin errores y la propiedad Text que es el nombre del enlace y es como el usuario lo vera podemos usar la misma dirección de enlace u otro nombre que consideremos mejor.



domingo, 15 de marzo de 2015

EnsureVisible





' Gambas class file

'by postapase

Public Sub Form_Open()
 Me.Center
End

Public Sub btnEnviar_Click()
  If RadioButton1ActivarEnsureVisible.Value = True Then
     TextArea1.Text &= "EnsureVisible activado" & gb.NewLine
     TextArea1.EnsureVisible ' se ve siempre el último  mensaje del textArea
  Else 
     TextArea1.Text &= "EnsureVisible desactivado" & gb.NewLine
     ' aqui como no se usa el metodo EnsureVisible de TextArea1 no se vera
     ' el último o últimos mensajes escritos.
  Endif
End

Nota: gracias a jguardon aprendí este detalle importante y lo comparto con ustedes con un simple ejemplo gráfico.

Descargar código fuente: ensurevisible-0.0.1.tar.gz

miércoles, 11 de marzo de 2015

Que significan esos iconitos?


Muchas veces me preguntaba que significaba cada icono con su forma y color distintos sin encontrar un lugar donde se hable de ello. Aquí les dejo que nos dicen esos iconos, sus diferentes formas y colores.

Constante Predefinida ir...

gb.NewLine, gb.LongDate, gb.Link



 Control
TextBox, Label, TextArea, Button



 Evento
Button1_Click() , Button1_KeyRelease() , Button1_MouseDown()




 Método o subrutina
ListBox1.Add, ListBox1.Clear , ListBox1.Move
FMain.cargarConfig() , FMain.SubRutina_X()


 Propiedad de solo lectura
Button.Id, Button.HasFocus, DirBox.Children



 Propiedad de lectura/escritura
Button.Picture, Button.Enable, Button.Icono







Static Property Read







Static Public













 Variable
 
FMain.Arbitro, FMain.AutoGuardado, FMain.alargue

ejemplo de 3 variables del Tanteador del formulario principal 
llamado FMain.  , en el recuadro solo aparece el nombre de la variable 
sin el nombre del formulario.



ServerSocket

ServerSocket es una clase de red por lo tanto debemos activar el componente llamado gb.net(programacion de red). Se usa para crear un servidor, en mi caso estoy creando un servidor que provera a los clientes (cada pc que tenga el tanteador instalado frente a cada mesa de tenis de mesa) el acceso a una base de datos con nombres de jugadores y sus datos personales, un chat(mas que nada para ahorrarse andar caminando muchos metros), un tablero con todas las visualizaciones de todos los tanteadores en tiempo real para que el organizador pueda monitorear con comodidad el torneo.


Propiedades

Class: (propiedad de solo lectura)
 Nombre de la clase (ServerSocket)


Name: (propiedad de lectura y escritura)
Nombre de la clase que identifica la clase ServerSocket en nuestro programa o dentro del código fuente. En la imagen de arriba vemos como gambas predeterminadamente le pone ServerSocket1 y si agregas otro usa el mismo nombre sumando el numero es decir ServerSocket2, para los que comenzamos en esto de la programación es conveniente dejar el nombre completo para facilitar la comprensión del código fuente, si ya se es un programador avanzado seguro es mejor poner un nombre mas chico (ejemplos: Ss1, ServerS1, etc...)


Group:


Path: (propiedad de lectura y escritura,string)
Cuando el tipo de servidor es local se define la ruta del archivo especial.

ejemplo:
ServerSocket.type= Net.Local
ServerSocket.Path= Home.User &"/misocket"



Port (propiedad de lectura y escritura,numerico)
puerto elegido para escuchar (es conveniente usar un numero mayor a 1024 para evitar conflictos con aplicaciones comunes con puertos ya predeterminados, ejemplos: 5090,8911)

Public: (propiedad de lectura y escritura, verdadero o falso)


Type: (propiedad de lectura y escritura, constante)

  Net.Internet (un pc sera el servidor los otros pc serán clientes)
  Net.Local (el servidor y los clientes funcionan en una misma pc)


X: (propiedad de lectura y escritura, numerico)


Y: (propiedad de lectura y escritura,numerico)

Eventos:
Connection

Public Sub ServerSocket1_Connection()

End



Error

Public Sub ServerSocket1_Error()
 
 
End



Métodos

ServerSocket1.Accept()

ServerSocket1.Close()

ServerSocket1.Listen()

ServerSocket1.Pause()

ServerSocket1.Resume()





Vamos a: Proyecto-->Propiedades-->Componentes y en el cuadro de búsqueda ponemos net y aparecerá en una lista reducida tildamos en gb.net y hacemos clic en ok.


Al hacer esto se activara una pestaña con objetos de red entre ellos ServerSocket.


Ahora creamos un formulario y seleccionamos el icono ServerSocket y arrastramos al formulario y recién ahí estamos prontos para ingresar código y manipular la clase ServerSocket.