Asignación dinamica de accion en botones

Asignación dinamica de accion en botones

Postby groiss » Wed Mar 29, 2017 11:10 am

Buenos días:
Tengo que crear un dialogo con una serie de botones, el número de los mismos es diferente de unas ocasiones a otra, y los tengo creados desde recursos, esos tiene una unica acción, que es la de cargar una variable con el valor que representa el prompt del botón, y ponerla a su vez en un say. Pues esta es la que no acabo de conseguir
Code: Select all  Expand view
for i=1 to ultimo
        redefine BUTTON aboton[i] id 1100+i of odlg prompt str(i,3,0)  ACTION {cres:=(::cCaption),ores:settext(cres)}
             
next i
 

Así es como lo hago, evidentemente no es la forma, pues me genera un error en tiempo de ejecución al no existir la variable self

Alguna idea, he buscado por el foro y no encuentro nada, pero me pareció ver hace tiempo algo similar
Un saludo y gracias
groiss
 
Posts: 221
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Asignación dinamica de accion en botones

Postby hmpaquito » Wed Mar 29, 2017 12:04 pm

Un primer error es que la creacion de los botones no la haces en un metodo de la clase que contiene la data cCaption. O metes la creacion en un metodo de la clase o pasas el objeto como parametro y luego lo utilizas asi objPar:cCaption.
hmpaquito
 
Posts: 1482
Joined: Thu Oct 30, 2008 2:37 pm

Re: Asignación dinamica de accion en botones

Postby groiss » Wed Mar 29, 2017 2:59 pm

Hmpaquito, gracias.
Supongo que si aplico tu solución, acabo con el mismo valor siempre, pues el valor que devolvería cualquier actio de cualquier boton sería aboton[i]:ccaption, i si el último valor que tomó i era 76, pues en todos los botones devolverá 76.
Lo que tengo que hacerlo he visto alguna vez en este foro, pero no lo encuentroes que el baction de cada boton sea diferente aunque generado de forma secuencial usando el mismo patron y ahi es donde no doy con la forma.
Muchas gracias
José Luis
groiss
 
Posts: 221
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA

Re: Asignación dinamica de accion en botones

Postby Antonio Linares » Wed Mar 29, 2017 3:05 pm

regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 42071
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Re: Asignación dinamica de accion en botones

Postby groiss » Wed Mar 29, 2017 3:19 pm

Antonio:
Muchas gracias, eso buscaba, pero cual es mi sorpresa que si pongo en el action del redefine del button esto cres:=str(::nid-1100,3,0)
me tira un error en ejecución diciendo que no existe la variable self.
Gracias.
Un saludo
groiss
 
Posts: 221
Joined: Tue Sep 01, 2009 7:55 am
Location: Plasencia - ESPAÑA


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: No registered users and 48 guests