🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 效果 ![](https://img.kancloud.cn/2d/49/2d499a3ea865d881a55b6fd14f6caf4b_533x334.png) ## 网格api ``` 原api: void SetGridLine(bool MajorH, bool MajorV, bool MinorH, bool MinorV, int nPlotIndex); dll工具导出的api: SetGridLine = _dll.api("?SetGridLine@Classless@@YAX_N00000@Z","void(byte,byte,byte,byte,byte,byte)") ; SetGridLine1 = _dll.api("?SetGridLine@Classless@@YAX_N000@Z","void(byte,byte,byte,byte)") ; SetGridLine2 = _dll.api("?SetGridLine@Classless@@YAX_N000H@Z","void(byte,byte,byte,byte,int)") ; 对比就会发现原api中用的是bool类型,而导出的是byte类型了(数字) SetGridLine的前四个参数分别表示是否绘制主网格横线、主网格竖线、副网格横线、副网格竖线,第五个参数是子图序号 ``` ## 背景api ``` void SetBkgndColor(COLORREF color, int nPlotIndex); dll导出的: SetBkgndColor = _dll.api("?SetBkgndColor@Classless@@YAXK@Z","void(LONG)") ; SetBkgndColor1 = _dll.api("?SetBkgndColor@Classless@@YAXKH@Z","void(LONG,int)") ; ``` ## 代码 ``` import win.ui; /*DSG{{*/ var winform = win.form(text="aardio form";right=516;bottom=295) winform.add() /*}}*/ import CChart var cc = CChart() cc.CreateChart() cc.Attach1(winform.hwnd,0) var x = { double arr[360] = {0} }; var y1 = { double arr[360] = {0} }; var y2 = { double arr[360] = {0} }; for(i=1;360;1){ x.arr[i] = i ; y1.arr[i] = 5.0*math.sin(i*2.0*3.14/360.0*3.0) ; y2.arr[i] = 2.0*math.cos(i*2.0*3.14/360.0*3.0) ; } cc.AddCurve1( x,y1,360,0 ) cc.AddCurve1( x,y2,360,1 ) // 添加标题、横轴、纵轴 cc.SetTitle("曲线图") cc.SetAxisTitle("横轴",1) cc.SetAxisTitle("纵轴",0) // 修改图例 cc.SetDataTitle("sin",0,0) cc.SetDataTitle("cos",1,0) // 显示网格 cc.SetGridLine2(1,1,1,1,0) // 修改背景 cc.SetBkgndColor1(0x6688EEEE,0) cc.ReDraw2() winform.onClose = function(hwnd,message,wParam,lParam){ cc.Detach( winform.hwnd ) cc.DestroyChart() } winform.show(); win.loopMessage(); return winform; ```