by Elias Torres » Wed Dec 13, 2006 5:35 pm
Hola...
Yo lo uso así...
DEFINE dialog odlg1 resource "listado_articulos"
redefine LISTBOX oBrw;
FIELDS hBmp, temporal->codart, temporal->nomart;
HEADERS "","Código", "Descripción" ID 500 OF oDlg1
oBrw:aActions := {{|| NIL},{||ordenar_por_codigo(),oBrw:Upstable(),oBrw:Refresh()}, {|| ordenar_por_nombre(),oBrw:Upstable(),oBrw:Refresh()}}
ACTIVATE dialog odlg1
Como ves el listbox lo he llamado oBrw. En el tienes 3 cabeceras, la primera es para poner un icono, la segunda indica el campo codart de una tabla temporal y el tercero el nombre de esa misma tabla.
Luego, que es lo que tu quieres, utilizo lo siguiente:
oBrw:aActions := {{|| NIL},{||ordenar_por_codigo(),oBrw:Upstable(),oBrw:Refresh()}, {|| ordenar_por_nombre(),oBrw:Upstable(),oBrw:Refresh()}}
Esto lo que hace es lo siguiente: si te fijas tienes 3 bloques encerrados por {} y separados por ',' , el primero corresponde a la primera colunma (tiene puesto un nil porq esa columna es para un icono, entonces no hará nada), la segunda contiene una funcion (ordenar_por_nombre() seguido de un refresco del oBrw), y la tercera contiene otra funcion....
Espero haberte ayudado...
Saludos.
Elías Torres.