Clipper/FiveWin - Diseñando un Planning

 
Vista:

Diseñando un Planning

Publicado por lorenzo (180 intervenciones) el 14/08/2006 10:37:56
Hola amigos...

Estoy diseñando un planning mediante resource WorkShop. Mi idea principal era que el Dialog contuviese 365 Bitmaps correspondiente a los 365 dias del año, pero Workshop solo permite 256 controles por Dialogs así que opte por hacer un Folder y distribuir por semestres el planning.

En el PRG, intentanto evitar tener que escribir 186 "redefine Bitmaps" por cada folders, hice lo siguiente:

DEFINE DIALOG.....
...
nID:=1
FOR X=101 TO 286
REDEFINE BITMAP oBmp[ nID] ID x ADJUST RESOURCE "Blanco" OF fol:adialogs[1] CURSOR oCurDedo ; nID++
next x
....
ACTIVATE DIALOG

Mi idea final, es que gustaría que el usuario final pudiese consultar el contenido de cada día con solo situar el ratón encima del BITMAP mediante un tooltip, o bien, haciendo un click mediante ON CLICK..... así que al redefine le añadí lo siguiente:

REDEFINE BITMAP oBmp[ nID] ID x ADJUST RESOURCE "Blanco" OF fol:adialogs[1] CURSOR oCurDedo ON CLICK (valor[nID]:=nID,VERDIA(valor)) ; nID++

El problema es que una vez terminado el bucle FOR-NEXT, nID toma el último valor ( es decir 186 y que corresponde al ultimo dia del semestre - 30 de junio- ) y es el que pasa a la funcion VERDIA.

¿ Como hago para que cuando seleccione el 5 de Enero, por ejemplo, traslade el nID=5 a la funcion VERDIA ?

MIL GRACIAS POR TODO....
¿ Alguna otra sugerencia, para simplificar la cosa?

P.D: Todo esto se soluciona escribiendo los 356 redefines bitmaps en el PRG, pero intento evitar tener que escribir tanto.

LORENZO
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Diseñando un Planning

Publicado por Gabriel Pascual (913 intervenciones) el 14/08/2006 12:40:29
Lo que te esta pasando es un problem TIIIIIPICO de clipper se llama "late bindery" o interpretación tardía, obviamente el valor no se asigna porque se va cambiando.

Sugerencia: no utilices el comando, utiliza directamente la llamada a la clase:

TBitmap():Redefine(....)

y ahi si podras utilizar un numreo para llamar al indentificador.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Diseñando un Planning

Publicado por Martin Gamez (7 intervenciones) el 16/08/2006 19:06:07
Lorenzo, mandame un mail, creo que tengo alguna rutina por ahi para eso,

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar