Graphics In Form
Add a method in Graphics(Class)
void parmStacked(int _stacked = 0)
{
;
chartFXCtrl.stacked(_stacked);
}
Add a ActiveX(Chart Object) in a Form and set name="MyGraphics" and Add a method in Form
and override TablePage method : pageActivated(element.showGraphics())
void showGraphics()
{
AAATestGraphics TestGraphics;
Integer mark;
Integer x;
str s;
str strPeriod;
str strKey;
str strBase;
Map mapPeriod = new Map(Types::String,Types::String);
Map mapKey = new Map(Types::String,Types::String);
Map mapBase = new Map(Types::String,Types::Real);
MapIterator mi;
;
if (graphics)
graphics.closeGraph();
graphics = Graphics::newGraphicsNoTitles(Mygraphics,Mygraphics.widthValue() ? Mygraphics.widthValue() : 700,Mygraphics.heightValue() ? Mygraphics.heightValue() : 400);
TestGraphics = AAATestGraphics_ds.getFirst(1,false);
mark = 0;
// mark = 1;
graphics.resetGraph();
graphics.parmStacked(1);
TestGraphics = AAATestGraphics_ds.getFirst(mark,true);
while (TestGraphics)
{
x++;
strPeriod = TestGraphics.Month;
strKey = TestGraphics.Type;
strBase = num2str(TestGraphics.Value,1,2,1,0);
if ( ! strPeriod && ! strKey && ! strBase)
break;
s =strPeriod+'#'+strKey+'#'+strBase+'#'+int2str(x);
mapPeriod.insert(s,strPeriod);
mapKey.insert(s,strKey);
mapBase.insert(s,TestGraphics.Value);
TestGraphics = AAATestGraphics_ds.getNext();
}
mi = new MapIterator(mapPeriod);
mi.begin();
while (mi.more())
{
strPeriod = mapPeriod.lookup(mi.key()) ? mapPeriod.lookup(mi.key()) : '\'\'';
strKey = mapKey.lookup(mi.key()) ? mapKey.lookup(mi.key()) : '\'\'';
graphics.loadData(strPeriod,strKey,mapBase.lookup(mi.key()));
mi.next();
}
graphics.showGraph();
}
posted on 2008-09-02 16:28 lingdanglfw 阅读(291) 评论(0) 编辑 收藏 举报