Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Últimos temas

Estadísticas del foro
  • Mensajes del foro:4,787
  • Temas del foro:879
  • Miembros:167
  • Último miembro:alfonsoC3


Enviado por: guizans
08-08-2022, 00:03
Foro: General
- Respuestas (4)

Hola a todos.

Me estoy volviendo loco con un error que no soy capaz de encontrar. Tengo esta función, que basicamente rellena un array de dos dimensiones preguntando al usuario por los números.

GAMBAS
  1. Private Function preguntarDatos(d As String) As Float[]
  2.  
  3.   Dim a, c As Integer
  4.   Dim entrada As String
  5.   Dim en As Float[]
  6.   Dim b As Float
  7.  
  8.   en = New Float[filas, columnas]
  9.   Print "Introduce los datos de la matriz '" & d & "':"
  10.   For c = 0 To filas - 1
  11.     For a = 0 To columnas - 1
  12.       While True
  13.         Print "Dato [" & Str(c + 1) & ", " & Str(a + 1) & "] = ?"
  14.         Input entrada
  15.         Try b = CFloat(entrada)
  16.         If Error Then
  17.           Print "Dato no válido..."
  18.         Else
  19.           Break
  20.         Endif
  21.       Wend
  22.       en[c, a] = b
  23.     Next
  24.   Next
  25.   Return en


Como apunte, las variables "filas" y "columnas" son variables de clase y he comprobado que no tengan un valor de cero. El caso que es en la primera vuelta del bucle for me da un error de "Bad number of dimensions" en la línea 22. Y no puede ser, ya que las variables "c" y "a" tienen el valor de 0, como digo es en la primera interacción.
 El caso que poninedo este código en la web de Gambas no me da error.
GAMBAS
  1. Dim entrada,d As String
  2. Dim en As Float[]
  3. dim filas, columnas as integer
  4.  
  5. filas = 3
  6. columnas = 3
  7. d="jk"
  8.  
  9.   en = New Float[filas, columnas]
  10.   Print "Introduce los datos de la matriz '" & d & "':"
  11.   For c = 0 To filas - 1
  12.     For a = 0 To columnas - 1
  13.       While True
  14.         Print "Dato [" & Str(c + 1) & ", " & Str(a + 1) & "] = ?"
  15.       entrada = "3"
  16.         Try b = CFloat(entrada)
  17.         If Error Then
  18.           Print "Dato no válido..."
  19.         Else
  20.           Break
  21.         Endif
  22.       Wend
  23.       en[c, a] = b
  24.     Next
  25.   Next



Como se puede observar es practicamente el mismo, el primero me da error y el segundo no. ¿Alguién ve lo que estoy haciendo mal?

Muchas gracias.

Un saludo.

Imprimir


Enviado por: sushisan
07-08-2022, 16:29
Foro: General
- Respuestas (3)

Buenos días a todos.

Necesito implementar algo que se comporte como el Form en el IDE: que se pueda arrastrar "algo" (una imagen por ejemplo) y se coloque según una grilla, pero que , una vez colocado, pueda volverse a arrastrar de nuevo para reubicarlo. Intente un drag/drop sobre un Drawapanel y dibujar la imagen, lo cual funciona correctamente, pero eso no puede volver a reubicarse de la misma manera, queda fijo. Lo cual es correcto porque el nuevo dibujo no es un objeto si no un dibujo sobre el DrawPanel.

Hay algo parecido o un ejemplo de algo similar?

Imprimir


Enviado por: Shell
31-07-2022, 11:51
Foro: General
- Respuestas (1)

Buenas!.

¿ Es normal tener una opción en el menú que es un calco una de la otra ?.

- Herramientas -> Encontrar
- Herramientas -> Buscar y reemplazar

No es una cuestión propia del editor de Gambas.
Es normal que existan dos opciones en un menú ya que son opciones distintas, aunque su formulario sea similar.

Gambas:

[Imagen: K0NLsko.png]

( Muy buena, tanto la opción de resaltado como la opción de buscar sin usar el menú, una búsqueda detalla en la parte inferior de la ventana del editor)

Visual Studio Code: Parece muy breve.

[Imagen: Yozo0Hy.png]

El botón izquierdo ">" permite abrir la opción de reemplazar.

[Imagen: G50fWUC.png]

Idle: Es el que más difiere.

[Imagen: rOppoUV.png]

Reemplazar en Idle:

[Imagen: dXls8xu.png]


Lazarus:

[Imagen: nEBZ2IY.png]

Automáticamente se activa el checkbox para saber que se pretende reemplazar una cadena.
Aunque las dos opciones se encuentran en el menú y es muy similar en parte a Gambas.

[Imagen: 5QM8KW8.png]

A ver que os gusta más.
- Que aparezcan las dos opciones en el menú (probablemente lo más lógico)
- Que su formulario fuese distinto y más dedicado a lo que se pretende hacer.

Saludos

Imprimir