Shell 03-05-2023, 22:42
Buenas!.

En dos códigos posteados por Cogier no declara el alcance de la variable.
La primera vez que seleccione el código y lo pegué  en el editor, pensé, aquí falta algo. Si es private o públic la variable.

Ejemplo:

Código:
distancia As Float

Private alcance As Float


Public Sub Form_Open()

 

End

¿ Desde que versión de Gambas soporta está característica ?. ( No sé si esto lo va a soportar versiones muy anteriores ).
Había visto la declaración automática de variables locales, pero que no se le diga directamente al editor cual es el alcance, no.
Por defecto es global, claro.

Saludos
alberto-moyano 03-05-2023, 20:31
Hola gente, buscando info sobre Gambas en chatGPT, le pregunté que sabía de Gambas 4, y esta fue la respuesta (es más larga, me quedo con lo esencial).
 
Cita:la futura versión de Gambas 4 incluirá cambios importantes en la sintaxis del lenguaje y una biblioteca gráfica completamente nueva

Saludos
Shell 03-05-2023, 00:21
Buenas!

Tengo que eliminar una serie de controles en un contenedor. Pero la eliminación de estos es un poco más complicado que ocultarlos.
Por otro lado cuando se elimina un control, ¿ se elimina o queda invalido ?.

He creado este ejemplo. En un panel añado picturebox desde los botones de abajo, su imagen varia dependiendo si quiero que muestre
un círculo o un cuadrado.

Puedo ocultar cada uno de los controles, ¿ pero seria posible eliminarlos ?. Acordaros que los controles en su contenedor tienen un indice.
Si es un array, haceros a la idea de lo que quiere decir eso, cuando eliminas un elemento y lo que ocurre con sus indices.

Actualmente solo oculto los controles creados.

[Imagen: cBFL4iL.png]

Para eliminar se debe hacer click sobre la figura.

Código:
'Actualmente no los elimina, los oculta
Private afigures As New PictureBox[] 'Almacenará todos los picturebox
Private indice As Integer

Public Sub Form_Open()
 
  Me.Title = "Eliminar control de su contenedor"
  Panel1.Arrangement = Arrange.Row
 
End

Public Sub CrearFigura(tipo As Integer)
 
  Dim pfigura As PictureBox
 
  pfigura = New PictureBox(Panel1) As "Figura"
  Select Case tipo
    Case 1
       pfigura.Picture = Picture.Load(Application.Path &/ "circulo.png")
    Case 2
      pfigura.Picture = Picture.Load(Application.Path &/ "cuadrado.png")
  End Select
  With pfigura
    .Tooltip = "Haz click para eliminarlo del panel"
    .w = 64
    .H = 64
    .Tag = indice    
  End With
  indice += 1
  afigures.Add(pfigura)
 
End

Public Sub BotonesCreadores_Click()
 
  'Crea un circulo "1" o un cuadrado "2"
  CrearFigura(Last.tag)
 
End

Public Sub Figura_MouseDown()
 
  'Se oculta el último picturebox en el que se ha hecho click dentro de el
  Last.Hide
 
End

Subo el ejemplo.

Saludos
Archivos adjuntos
.gz
TestEliminarControlEnPanel-0.0.1.tar.gz (Tamaño: 13.25 KB Descargas: 1)
Páginas (569):    1 187 188 189 190 191 569   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 300
Último miembro: Armando56
Temas del foro: 1,756
Mensajes del foro: 9,128
Últimos temas
Un interprete de basic en...
Foro: HTML, CSS, Javascript
Último mensaje por: guizans, 03-02-2026, 23:34
Respuestas: 5 - Vistas: 180
El ratón no hace click do...
Foro: Instalación
Último mensaje por: guizans, 30-01-2026, 20:41
Respuestas: 2 - Vistas: 190
Parámetro de clase y pará...
Foro: General
Último mensaje por: guizans, 30-01-2026, 20:40
Respuestas: 8 - Vistas: 375
Gmao-Factory: Aplicación ...
Foro: Python
Último mensaje por: jguardon, 25-01-2026, 15:53
Respuestas: 5 - Vistas: 296
SqetchDB, un proyecto re-...
Foro: General
Último mensaje por: guizans, 21-01-2026, 19:57
Respuestas: 8 - Vistas: 441
Powered By MyBB, © 2002-2026 MyBB Group.
Made with by Curves UI.