I try to explain to You
to create a plan you nust create a window or dialog with 3 part
part of calendar( days)
part of data ( archive)
part of graphics
if you can try you can try Egant.prg ( the same prg of gant class of Arthuro)
on it there are some modify
example
- Code: Select all Expand view
@ 26,253 PLAN oDias WINDOW oWndGant ;
SIZE nwincol-270,38 ;
BORDER ;
COLORS CLR_BLACK, wclrBack //CLR_HGRAY
oDias:bPainted := {|| Dias(odias,ofont,nHoriz,osplit,wDiaLab,ograficos,oSplit1,oPen1,oPen3,oPen4,oPen5,oPen2,dFecIni,dFecha,nTipo,nVertic) }
@ 60,253 PLAN oGraficos WINDOW oWndGant ;
SIZE nwincol-270,nWinRow-102 ;
BORDER ;
VSCROLL ;
HSCROLL ;
ON CHANGE editFec(odias,ofont,@nHoriz,osplit,ograficos,oSplit1,oPen1,oPen3,oPen4,oPen5,oPen2,dFecIni,dFecha,nTipo,nvertic,olbx,wDiaLab) ; //para modificaciones de ancho de la barra
ON PRESED editPre(odias,ofont,@nHoriz,osplit,ograficos,oSplit1,oPen1,oPen3,oPen4,oPen5,oPen2,dFecIni,dFecha,nTipo,nvertic,olbx,wDiaLab) ; //para encadenamientos entre barras
COLORS CLR_BLACK, CLR_WHITE
ograficos:bPainted := {|| Graficos(@oGraficos,osplit,wDiaLab,oSplit1,nhoriz,oPen1,oPen3,oPen4,oPen5,oPen2,oPen6,oPen7,dFecIni,dFecha,nTipo,@nVertic,oFont) }
oGraficos:MouseMove()
oGraficos:lLavora:=.T.
* oGraficos:bRClicked := {|nRow,nCol| IIF(oGraficos:nItem > 0 , (oGraficos:lLavora := FALSE , MenuDestro(nRow,nCol), oGraficos:lLavora := TRUE ), ;
* Msginfo('Aggiungi') ) }
// to show TOOLTIP
oGraficos:bTrovaTip := {|| TrovaTip()}
to create graphics you must use the method rectang and oPen5 must be a brush
oGraficos:RECTang( nLinea+nVertic+4, nColumnaInicio+nHoriz, nLinea+nVertic+14, nColumnaFinal+nHoriz,oPen5,ActivProg->(Recno()) )
you must use wbrowse class of hernan with some modifies
see the file zip
if you have questions You can write me
Regards
Falconi Silvio