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.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Heredando de una clase que no existe se me cuelga Gambas
#1

Buenas!.

Como os comentaba en otro mensaje, quise reducir la clase creada y usar una clase que en ese momento no recordaba su nombre.
Si, no lo recordaba ya que el verdadero nombre de la clase es Rect y no Rectangle.

Se me ocurrió hacer esto en una clase de prueba.

GAMBAS
  1. Inherits Rectangle



[Imagen: Zy3Zpbw.png]

Y claro luego en el constructor intente poner el "." para una propiedad...Se congela!!!.
Así que existe alguna confusión con ese nombre.

Ah y fijaros que el nombre de la clase aparece de color distinto. ¿ Cómo si existiese realmente ?.

Saludos

"El buen perfume en frasco pequeño se vende"
    ¡Gracias!
#2

(20-05-2023, 11:49)Shell escribió:  Si, no lo recordaba ya que el verdadero nombre de la clase es Rect y no Rectangle.

Te respondo rapidito, que tengo que hacer la paella Big Grin
No existe ninguna clase, nativa al menos, llamada Rectangle solo existe Rect o RectF, te muestro la salida de Calssify.

[Imagen: 1sRhSbG.png]

1 Saludo.
[-] Los siguientes 1 usuarios dice gracias a tincho por este post:
  • Shell
    ¡Gracias!
#3

(20-05-2023, 11:56)tincho escribió:  Te respondo rapidito, que tengo que hacer la paella

Big Grin Big Grin
 
(20-05-2023, 11:56)tincho escribió:  No existe ninguna clase, nativa al menos, llamada Rectangle solo existe Rect o RectF, te muestro la salida de Calssify.

Efectivamente. Todo lo que añade detrás de Inherits por característica del editor le cambia el color. Se puede poner cualquier cosa.
Pero de ahí a colgarse. Debería decir que no existe o algo parecido. Al menos luego cuando se intente usar una propiedad o una clase
que no existe. Es un fallo que se puede entender como grave.

De paso buscaré la utilidad Classify.

Saludos

"El buen perfume en frasco pequeño se vende"
    ¡Gracias!
#4

Rectangle es el nombre de uno de los métodos de la clase Paint. A ver si van por ahí los tiros...

No podemos regresar
    ¡Gracias!
#5

(21-05-2023, 10:48)Shordi escribió:  Rectangle es el nombre de uno de los métodos de la clase Paint. A ver si van por ahí los tiros...

He probado a heredar de una clase que no existe. Y se cuelga igual.
Ejemplo la clase que no existe ( nombre el que quieran ).
Crean el constructor. Y ahora probar a escribir Me y el punto detras, se cuelga sin remedio.

GAMBAS
  1.  
  2. Public sub _new()
  3.  
  4.  Me.
  5.  



Saludos

"El buen perfume en frasco pequeño se vende"
    ¡Gracias!
#6

Pues no se que versión manejas. He intentado reproducir el problema y no se me ha colgado. Estoy en Debian 11 con Gambas 3.18.0
    ¡Gracias!
#7

(21-05-2023, 22:41)guizans escribió:  Pues no se que versión manejas. He intentado reproducir el problema y no se me ha colgado. Estoy en Debian 11 con Gambas 3.18.0

Linux Mint 20.3
Gambas 3.18.2 Estable.

Lo primero que debería hacer el editor es comprobar si existe la clase, en caso contrario dar un error.
No se puede heredar de una clase que no existe.

A ver si sale la Gambas 3.18.3 y soluciona más de un problema.

De todas forma, puedo probarlo en otras Linux Mint, pero la versión de Gambas me parece que es la misma.

¿ Te da a ti algún tipo de error al heredar de una clase que no existe  ?.

Es un error que me deja clavado el editor.

Saludos

Ejemplo con máquina virtual con:

- Linux Mint Cinnamon 21.
- Gambas 3.18.1

[Imagen: NTdqAXb.png]

Máquina virtual con Ubuntu 22.04.02 LTS.
Gambas 3.18.1

[Imagen: BmbKnD9.png]

"El buen perfume en frasco pequeño se vende"
    ¡Gracias!
#8

(22-05-2023, 13:13)Shell escribió:  ¿ Te da a ti algún tipo de error al heredar de una clase que no existe  ?.

Ahora he conseguido reproducir el error. No se me quedaba colgado por que lo hacia desde el método Main, pero al usar el método _new es cuando se queda colgado.
    ¡Gracias!
#9

(22-05-2023, 22:06)guizans escribió:  Ahora he conseguido reproducir el error. No se me quedaba colgado por que lo hacia desde el método Main, pero al usar el método _new es cuando se queda colgado.

Es como un bucle sin fin.

He probado con la Gambas que trae por defecto la Cinnamon 21, que es la Gambas 3.16.3 Al menos me dejó escribir "me."
y le dio tiempo a mostrar el nombre del constructor, pero se cuelga igual.

La idea es que pensaba que de alguna forma el editor se protegería a si mismo con un error así, mostrando un mensaje de error.

Saludos

"El buen perfume en frasco pequeño se vende"
    ¡Gracias!


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)