¡Hola a todos! Sé que el título no es muy descriptivo pero es que no se cómo contar lo que quiero hacer. Os cuento:
En Unity hay una función que se llama invoke, y funciona pasándole como parámetros una string con el nombre de la función a la que quieres que llame y un int con los milisegundos de delay con la que quieres que la llame.
Mi pregunta es: ¿sería posible en Bennu guardar en una string el nombre de una función a la que quiera llamar y que luego se llame a esa función?
Me temo que de momento tendrás que hacerlo a mano. Es decir, crearte tu una función que le pases esa string y el tiempo por parámetro y con un case lances la función correspondiente al string
Es que el tema es que quiero hacer una librería que te permita hacer botones y que puedas hacer algo así como:
process main()
private
gui_button boton=gui_button(x,y,size_x,size_y,etc...);
end
begin
boton.onclick="función";
end
function función()
begin
loquesea;
end
En Bennu no es posible eso que quieres hacer.
Jo, pues estaría guay que se añadiera en una próxima versión.
y para que ? para engorrar el lenguaje ? eso que pides es cambiar la filosofia o estructura de un lenguaje como lo quieras llamar, es hacer del lenguaje algo parecido a los lenguajes con eventos/objetos, para tener eso que pides tambien tienes que tener creada la funcion que llamas en el texto del nombre, que es lo mismo.
Tener
boton.onclick = "función";
a fines practicos es lo mismo que tener boton_onclick = función();
No, no es lo mismo. Porque con boton.onclick="funcion" estás guardando en una variable esa función y cuando el proceso tenga que echar mano de ella la usará.
boton.onclick=funcion(); lo que hace es ejecutar la función y guardar en una variable el resultado que devuelve.
mas bien estas asignando un evento, tal como en programacion windows forms, en bennu si tienes que echar mano de ella como dices pues la llamas y ya esta ;)
Pero si quiero hacer una librería que proporcione botones, textboxes y tal, es mucho más cómodo dar esta opción que proporcionar un sistema de flags que diga si se está pulsando, si no, etc...
Pero bueno, como no puede ser tampoco hace falta darle más vueltas.
pues la hay, esta por el foro, que tiene botones, ventanas, etc, estilo windows forms, no recuerdo es donde y quien la hizo, prg quizas ? habria que ver su src para ver como lo hizo
et voila!
http://forum.bennugd.org/index.php?topic=1752.msg30641#msg30641
La quise usar, pero no se adaptaba a lo que necesitaba xD
Imagino que soy un tanto rarete con estas cosas.