Shell 27-06-2023, 20:14
Buenas!

¿ Saben que una misma propiedad puede tener hasta tres nombres sinónimos ?. (identificadores)

Clase
Código:
Property text, document, paper As String
Private htext As String

Private Function text_Read() As String

  Return htext

End

Private Sub text_Write(Value As String)

  htext = Value

End

Main:

Código:
Public Sub Main()

Dim testThing As New Thing

testThing.text = "Hello World!"

Print testThing.text
Print testThing.document
Print testThing.paper

End

Salida:
 
Cita: 
Hello World!
Hello World!
Hello World!
 
Cita:Property Synonymous
PROPERTY [ READ | WRITE ] Identifier [ , Synonymous1 [ , Synonymous2 ... ] ] AS Datatype

SINCE 3.1
It is possible to declare up to three synonymous to the declared properties by using the second syntax.

Saludos
Shell 27-06-2023, 15:05
Buenas!.

Se que se ha hablado alguna vez. Pero ahora no lo encuentro.

En su día hice una clase que extendía la clase collection , el problema fue que dio error, método de clase mal sobre escrita o algo parecido.

Lo que no puedo asegurar es si el método no existía y luego fue añadido en el editor de Gambas.

Esta es la nueva clase collection. Un trozo de la misma. Donde veis el método Keys2, se llamaba antes Keys.
Y por eso daba error.

Código:
Inherits Collection

Private clavevalor As New Collection
Private valorclave As New Collection

Public Sub _new(diccionario As Collection)
 
  clavevalor = diccionario
   
End

Public Function Keys2() As String[] ''Devuelve todas las llaves de la colección en un array
 
  Dim claves As New String[]
  Dim v As String
 
  For Each v In clavevalor
    claves.Add(clavevalor.Key)
  Next
  Return claves
 
End

Para hacerlo funcionar tuve que renombrarlo.

Ahora os propongo este problema.

Imaginar que heredáis de una clase nativa y añadís un método que "no existe", pero con el tiempo el editor de Gambas crea otro que se llama igual.
¿ Saben lo que significa eso ?. Sad

¿ Es posible averiguar si el método ya existe antes en el editor y en caso contrario usar el personalizado ?.
Creo que sí. Pero significa que antes de usar "cada" método personalizado, debe consultarse si existe uno similar. ( No veas que rollo ).

Saludos
alberto-moyano 26-06-2023, 14:20
Hola gente, estoy intentando obtener la ruta de un terminalview y volcarlo en un textbox, pero obtengo un error, el código es este, no entiendo que hago mal, gracias de antemano por cualquier explicación que me aclare en que me equivoco




Código:
Public Sub Form_Open()

  Dim ruta As String

  pBash = TerminalView1.Exec(["bash"])

  ruta = TerminalView1.Input("pwd").Split("\n")[0]

  If ruta.EndsWith("\n") Then
    ruta = ruta[0, ruta.Length - 1]
  End If

  TextBox1.Text = ruta

End
Páginas (564):    1 160 161 162 163 164 564   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 292
Último miembro: DarkWolf
Temas del foro: 1,742
Mensajes del foro: 9,031
Últimos temas
Ordenar en un TableView
Foro: General
Último mensaje por: guizans, Ayer, 23:26
Respuestas: 5 - Vistas: 138
Odio a gb.Report
Foro: General
Último mensaje por: guizans, 02-11-2025, 13:36
Respuestas: 9 - Vistas: 1,573
Reportes de Gambas
Foro: Aplicaciones/Fragmentos de Código
Último mensaje por: Alberto59, 27-10-2025, 16:34
Respuestas: 2 - Vistas: 1,341
Ordenando las carpetas
Foro: Programación en otros lenguajes
Último mensaje por: tercoide, 22-10-2025, 15:57
Respuestas: 0 - Vistas: 118
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.