VB6.0中通过MSChart控件调用数据库

翻译|其它|编辑:郝浩|2007-09-28 15:03:29.000|阅读 1131 次

概述:

# 界面/图表报表/文档/IDE等千款热门软控件火热销售中 >>

VB6.0中的  MSChart  控件是一个功能强大的高级图表工具,拥有丰富的图表绘制功能,可显示二维和三维的棒图、区域图、线形图、饼图等多种常用图表。近日我为了在双击图表的某个区域时将与该区域相对应的数据库的内容在  DataGrid  控件上显示出来,遇到了许多困难,最后用一个自定义的变量  SelectSeries  解决了问题,具体方法如下:

设数据库名称为学生信息,有一  Access  学生成绩,其内容为一个班学生的考试成绩,包括学号、姓名、成绩3个字段,成绩字段格式是字符型,值为中的一个。

窗体  Form1包括一个  MSChart  控件  McScore,类型为二维饼图,用于显示每种成绩的学生数;一个  ADO  控件  AdScore  用于连接数据库;一个  DataGrid  控件  DgScore  用于以表格形式显示数据库内容。

工作过程为:双击饼图的某个区域,则  DgScore  显示相应成绩的学生名单。

代码如下:

Option Explicit

Dim SelectedSeries as Integer ′自定义变量

Dim Rs() as String ′提取记录集用的字符串数组

Private Sub Form_Load()

设定  DataGrid  控件的数据源

DgScore.DataSource=″AdScore″

设定  ADO  控件的连接字串和初始的记录源,即显示内容

AdScore.ConnectString=″Provider=Microsoft.OLEDB.3.51;Persist_Security Info=False;Data Source=学生信息

AdScore.RecordSource=″selet from  学生成绩  order by  成绩

AdScore.Refresh

预设好提取记录用的  SQL  语句

Rs(1)=″select from  学生成绩  where  成绩=″Chr(34)_Chr(34)″order by  成绩

Rs(2)=″select from  学生成绩  where  成绩=″Chr(34)_Chr(34)″order by  成绩

Rs(3)=″select from  学生成绩  where  成绩=″Chr(34)_Chr(34)″order by成绩

Rs(4)=″select from  学生成绩  where  成绩=″Chr(34)″_Chr(34)″order by  成绩

End Sub

Private Sub McScore_SeriesSelected(Series as Integer,MouseFlags as _Integer,Cancel as Integer)

SelectedSeries=Series

End Sub

Private Sub McScore_PointSelected(Series as Integer,DataPoint as_Integer,MouseFlags as

Integer,Cancel as Integer)
SelectedSeries=Series

End Sub

Private Sub McScore_Db1Click()

改变  ADO  控件的记录源并刷新

Adoc1.RecordSource=Rs(SeletedSeries)

Adoc1.Refresh

End Sub


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@evget.com


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP