OWC11用在VB下输出统计图

Graph_Area.ctl 利用OWC11制作的用户控件
ContractedBlock.gif ExpandedBlockStart.gif Graph_Area
None.gifRem 公共属性
None.gif
Private str_Graph_Name As String
None.gif
Private long_Graph_Width As Long
None.gif
Private long_Graph_Height As Long
None.gif
Private str_Y_Name As String
None.gif
Private int_Y_Min As Integer
None.gif
Private int_Y_Max As Integer
None.gif
Private int_Y_Maj As Integer
None.gif
Private str_X_Name As String
None.gif
Private int_X_Min As Integer
None.gif
Private int_X_Max As Integer
None.gif
Private int_X_Maj As Integer
None.gif
Private array_X_Values() As Integer
None.gif
Private str_C1_Name As String
None.gif
Private array_C1_Values() As String
None.gif
Private str_C1_Color As String
None.gif
Private str_C2_Name As String
None.gif
Private array_C2_values() As String
None.gif
Private str_C2_Color As String
None.gif
None.gif
Rem 私有変数
None.gif
Private str_X_Values As String
None.gif
Private str_Line1_Values As String
None.gif
Private str_Line2_Values As String
None.gif
None.gif
Rem 公共属性
ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get Graph_Name() As String
InBlock.gif    Graph_Name 
= str_Graph_Name
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let Graph_Name(ByVal value As String)
InBlock.gif    str_Graph_Name 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get Graph_Width() As Long
InBlock.gif    Graph_Width 
= long_Graph_Width
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let Graph_Width(ByVal value As Long)
InBlock.gif    long_Graph_Width 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get Graph_Height() As Long
InBlock.gif    Graph_Height 
= long_Graph_Height
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let Graph_Height(ByVal value As Long)
InBlock.gif    long_Graph_Height 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get Y_Name() As String
InBlock.gif    Y_Name 
= str_Y_Name
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let Y_Name(ByVal value As String)
InBlock.gif    str_Y_Name 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get Y_Min() As Integer
InBlock.gif    Y_Min 
= int_Y_Min
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let Y_Min(ByVal value As Integer)
InBlock.gif    int_Y_Min 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get Y_Max() As Integer
InBlock.gif    Y_Max 
= int_Y_Max
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let Y_Max(ByVal value As Integer)
InBlock.gif    int_Y_Max 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get Y_Maj() As Integer
InBlock.gif    Y_Maj 
= int_Y_Maj
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let Y_Maj(ByVal value As Integer)
InBlock.gif    int_Y_Maj 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get X_Name() As String
InBlock.gif    X_Name 
= str_X_Name
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let X_Name(ByVal value As String)
InBlock.gif    str_X_Name 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get X_Min() As Integer
InBlock.gif    X_Min 
= int_X_Min
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let X_Min(ByVal value As Integer)
InBlock.gif    int_X_Min 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get X_Max() As Integer
InBlock.gif    X_Max 
= int_X_Max
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let X_Max(ByVal value As Integer)
InBlock.gif    int_X_Max 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get X_Maj() As Integer
InBlock.gif    X_Maj 
= int_X_Maj
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let X_Maj(ByVal value As Integer)
InBlock.gif    int_X_Maj 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get C1_Name() As String
InBlock.gif    C1_Name 
= str_C1_Name
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let C1_Name(ByVal value As String)
InBlock.gif    str_C1_Name 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get C1_Values() As Variant
InBlock.gif    C1_Values 
= array_C1_Values
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let C1_Values(ByRef value As Variant)
InBlock.gif    array_C1_Values 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get C1_Color() As String
InBlock.gif    C1_Color 
= str_C1_Color
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let C1_Color(ByVal value As String)
InBlock.gif    str_C1_Color 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get C2_Name() As String
InBlock.gif    C2_Name 
= str_C2_Name
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let C2_Name(ByVal value As String)
InBlock.gif    str_C2_Name 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get C2_Values() As Variant
InBlock.gif    C2_Values 
= array_C1_Values
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let C2_Values(ByRef value As Variant)
InBlock.gif    array_C2_values 
= value
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Get()Property Get C2_Color() As String
InBlock.gif    C2_Color 
= str_C2_Color
ExpandedBlockEnd.gif
End Property

ExpandedBlockStart.gifContractedBlock.gif
Public Property Let()Property Let C2_Color(ByVal value As String)
InBlock.gif    str_C2_Color 
= value
ExpandedBlockEnd.gif
End Property

None.gif
None.gif
Rem 初期化の関数
ExpandedBlockStart.gifContractedBlock.gif
Private Sub UserControl_Initialize()Sub UserControl_Initialize()
InBlock.gifChartSpace1.Left 
= 0
InBlock.gifChartSpace1.Top 
= 0
InBlock.gifChartSpace1.Visible 
= False
InBlock.gif
'既定に設定
InBlock.gif
str_Graph_Name = "在庫状推移状況"
InBlock.giflong_Graph_Width 
= 9975
InBlock.giflong_Graph_Height 
= 6975
InBlock.gifstr_Y_Name 
= "台数"
InBlock.gifint_Y_Min 
= 0
InBlock.gifint_Y_Max 
= 350
InBlock.gifint_Y_Maj 
= 50
InBlock.gifstr_X_Name 
= "ラウンド"
InBlock.gifint_X_Min 
= 1
InBlock.gifint_X_Max 
= 8
InBlock.gifint_X_Maj 
= 1
InBlock.gifstr_C1_Name 
= "全体"
InBlock.gifstr_C1_Color 
= "#800040"
InBlock.gifstr_C2_Name 
= "AF"
InBlock.gifstr_C2_Color 
= "#8080FF"
ExpandedBlockEnd.gif
End Sub

None.gif
None.gif
Rem 表示統計図の関数
ExpandedBlockStart.gifContractedBlock.gif
Public Sub GraphShow()Sub GraphShow()
InBlock.gif
InBlock.gif
'データを用意します
InBlock.gif
Call Date_Prepare
InBlock.gif
InBlock.gif
Call ChartSpace1.Clear
InBlock.gifChartSpace1.Charts.Add (
0)
InBlock.gifChartSpace1.AllowUISelection 
= False
InBlock.gifChartSpace1.DisplayScreenTips 
= False
InBlock.gif
InBlock.gif
Set objChart = ChartSpace1.Charts.Item(0)
InBlock.gif 
'凡例を表示すります
InBlock.gif
objChart.HasLegend = True
InBlock.gif
'見出しを設けます
InBlock.gif
objChart.HasTitle = True
InBlock.gif
'統計図の名称
InBlock.gif
objChart.Title.Caption = str_Graph_Name
InBlock.gif
'統計図の名称は太字表示すります
InBlock.gif
objChart.Title.Font.Bold = True
InBlock.gif
'背景の色
InBlock.gif
objChart.PlotArea.Interior.Color = "White"
InBlock.gif
InBlock.gif
'X軸を設けます
InBlock.gif
objChart.Axes(0).HasTitle = True
InBlock.gif
'X軸の名称
InBlock.gif
objChart.Axes(0).Title.Caption = str_X_Name
InBlock.gif
'X軸の名称、下線を添加します
InBlock.gif'
objChart.Axes(0).Title.Font.Underline = UnderlineStyleEnum.owcUnderlineStyleSingle
InBlock.gif

InBlock.gif
'Y軸を設けます
InBlock.gif
objChart.Axes(1).HasTitle = True
InBlock.gif
'Y軸の名称を設けます
InBlock.gif
objChart.Axes(1).Title.Caption = str_Y_Name
InBlock.gif
'Y軸の名称、下線を添加します
InBlock.gif'
objChart.Axes(1).Title.Font.Underline = UnderlineStyleEnum.owcUnderlineStyleSingle
InBlock.gif'
Y軸の最小値を設けます
InBlock.gif
objChart.Axes(1).Scaling.Maximum = int_Y_Max
InBlock.gif
'Y軸の最大値を設けます
InBlock.gif
objChart.Axes(1).Scaling.Minimum = int_Y_Min
InBlock.gif
'Y軸の目盛を設けます
InBlock.gif
objChart.Axes(1).MajorUnit = int_Y_Maj
InBlock.gif
InBlock.gif
'線1を添加します
InBlock.gif
Set line1 = objChart.SeriesCollection.Add(0)
InBlock.gif
'線1のタイプを設けます
InBlock.gif
line1.Type = ChartChartTypeEnum.chChartTypeArea
InBlock.gif
'線1の点のタイプを設けます
InBlock.gif'
line1.Marker.Style = ChartMarkerStyleEnum.chMarkerStyleCircle
InBlock.gif'
線1の色を設けます
InBlock.gif'
line1.Line.Color = "darkred"
InBlock.gif'
点の色を設けます
InBlock.gif
line1.Interior.Color = str_C1_Color
InBlock.gif
'線1の点のサイズを設けます
InBlock.gif'
line1.Marker.Size = line1_PointSize
InBlock.gif'
線1の名称を設けます
InBlock.gif
Call line1.SetData(ChartDimensionsEnum.chDimSeriesNames, ChartSpecialDataSourcesEnum.chDataLiteral, str_C1_Name)
InBlock.gif
'線1のX軸を設けます
InBlock.gif
Call line1.SetData(ChartDimensionsEnum.chDimCategories, ChartSpecialDataSourcesEnum.chDataLiteral, str_X_Values)
InBlock.gif
'線1の値を設けます
InBlock.gif
Call line1.SetData(ChartDimensionsEnum.chDimValues, ChartSpecialDataSourcesEnum.chDataLiteral, str_Line1_Values)
InBlock.gif
'ラベルを表示すります
InBlock.gif
Call line1.DataLabelsCollection.Add
InBlock.gifline1.DataLabelsCollection(
0).HasValue = False
InBlock.gif
InBlock.gif
'線2を添加します
InBlock.gif
Set line2 = objChart.SeriesCollection.Add(1)
InBlock.gif
'線2のタイプを設けます
InBlock.gif
line2.Type = ChartChartTypeEnum.chChartTypeArea
InBlock.gif
'線2の点のタイプを設けます
InBlock.gif'
line1.Marker.Style = ChartMarkerStyleEnum.chMarkerStyleCircle
InBlock.gif'
線2の色を設けます
InBlock.gif'
line2.Line.Color = str_C2_Color
InBlock.gif'
点の色を設けます
InBlock.gif
line2.Interior.Color = str_C2_Color
InBlock.gif
'線2の点のサイズを設けます
InBlock.gif'
line1.Marker.Size = line1_PointSize
InBlock.gif'
線2の名称を設けます
InBlock.gif
Call line2.SetData(ChartDimensionsEnum.chDimSeriesNames, ChartSpecialDataSourcesEnum.chDataLiteral, str_C2_Name)
InBlock.gif
'線2のX軸を設けます
InBlock.gif
Call line2.SetData(ChartDimensionsEnum.chDimCategories, ChartSpecialDataSourcesEnum.chDataLiteral, str_X_Values)
InBlock.gif
'線2の値を設けます
InBlock.gif
Call line2.SetData(ChartDimensionsEnum.chDimValues, ChartSpecialDataSourcesEnum.chDataLiteral, str_Line2_Values)
InBlock.gif
'ラベルを表示すります
InBlock.gif
Call line2.DataLabelsCollection.Add
InBlock.gifline2.DataLabelsCollection(
0).HasValue = False
InBlock.gif
InBlock.gif
Rem 統計図のサイズを設けます
InBlock.gif
ChartSpace1.Width = long_Graph_Width
InBlock.gifChartSpace1.Height 
= long_Graph_Height
InBlock.gifUserControl.Width 
= long_Graph_Width
InBlock.gifUserControl.Height 
= long_Graph_Height
InBlock.gifChartSpace1.Visible 
= True
ExpandedBlockEnd.gif
End Sub

None.gif
None.gif
Rem データを用意する関数
ExpandedBlockStart.gifContractedBlock.gif
Private Sub Date_Prepare()Sub Date_Prepare()
InBlock.gif
'故障許容
InBlock.gif
If int_Y_Min < 0 Then
InBlock.gif    int_Y_Min 
= 0
InBlock.gif
End If
InBlock.gif
If int_Y_Maj <= 0 Then
InBlock.gif    int_Y_Maj 
= 1
InBlock.gif
End If
InBlock.gif
If int_X_Maj < 1 Then
InBlock.gif    int_X_Maj 
= 1
InBlock.gif
End If
InBlock.gif
'X軸の値を作ります
InBlock.gif
For i = int_X_Min To int_X_Max Step int_X_Maj
InBlock.gif    
If i = int_X_Min Then
InBlock.gif        str_X_Values 
= int_X_Min
InBlock.gif    
Else
InBlock.gif        str_X_Values 
= str_X_Values & "," & i
InBlock.gif    
End If
InBlock.gif
Next i
InBlock.gif
'線1の値を作ります
InBlock.gif
str_Line1_Values = Join(array_C1_Values, ","& "," & "-100000"
InBlock.gif
'線2の値を作ります
InBlock.gif
str_Line2_Values = Join(array_C2_values, ","& "," & "-100000"
ExpandedBlockEnd.gif
End Sub

None.gif



Form1.frm 示例文件后台代码
ContractedBlock.gif ExpandedBlockStart.gif Form1
None.gifDim Graph_Name As String
None.gif
Dim Graph_Width As Long
None.gif
Dim Graph_Height As Long
None.gif
Dim Y_Name As String
None.gif
Dim Y_Min As Integer
None.gif
Dim Y_Max As Integer
None.gif
Dim Y_Maj As Integer
None.gif
Dim X_Name As String
None.gif
Dim X_Min As Integer
None.gif
Dim X_Max As Integer
None.gif
Dim X_Maj As Integer
None.gif
Dim array_X_Values() As Integer
None.gif
Dim C1_Name As String
None.gif
Dim array_C1_Values() As String
None.gif
Dim str_C1_Color As String
None.gif
Dim C2_Name As String
None.gif
Dim array_C2_values() As String
None.gif
Dim str_C2_Color As String
None.gif
None.gif
ExpandedBlockStart.gifContractedBlock.gif
Private Sub Command1_Click()Sub Command1_Click()
InBlock.gif
Rem データを用意します
InBlock.gif
Graph_Name = Text_Graph_Name.Text
InBlock.gifGraph_Width 
= Text_Graph_Width.Text
InBlock.gifGraph_Height 
= Text_Graph_Height.Text
InBlock.gifY_Name 
= Text_Y_Name.Text
InBlock.gifY_Min 
= Text_Y_Min.Text
InBlock.gifY_Max 
= Text_Y_Max.Text
InBlock.gifY_Maj 
= Text_Y_Maj.Text
InBlock.gifX_Name 
= Text_X_Name.Text
InBlock.gifX_Min 
= Text_X_Min.Text
InBlock.gifX_Max 
= Text_X_Max.Text
InBlock.gifX_Maj 
= Text_X_Maj.Text
InBlock.gifC1_Name 
= Text_C1_Name.Text
InBlock.gifarray_C1_Values 
= Split(Text_C1_Values.Text, ",")
InBlock.gifstr_C1_Color 
= Text_C1_Color.Text
InBlock.gifC2_Name 
= Text_C2_Name.Text
InBlock.gifarray_C2_values 
= Split(Text_C2_Values.Text, ",")
InBlock.gifstr_C2_Color 
= Text_C2_Color.Text
InBlock.gif
Rem コンポーネントに値を代入すります
InBlock.gif
Graph1.Graph_Name = Graph_Name
InBlock.gifGraph1.Graph_Width 
= Graph_Width
InBlock.gifGraph1.Graph_Height 
= Graph_Height
InBlock.gifGraph1.Y_Name 
= Y_Name
InBlock.gifGraph1.Y_Min 
= Y_Min
InBlock.gifGraph1.Y_Max 
= Y_Max
InBlock.gifGraph1.Y_Maj 
= Y_Maj
InBlock.gifGraph1.X_Name 
= X_Name
InBlock.gifGraph1.X_Min 
= X_Min
InBlock.gifGraph1.X_Max 
= X_Max
InBlock.gifGraph1.X_Maj 
= X_Maj
InBlock.gifGraph1.C1_Name 
= C1_Name
InBlock.gifGraph1.C1_Values 
= array_C1_Values
InBlock.gifGraph1.C1_Color 
= str_C1_Color
InBlock.gifGraph1.C2_Name 
= C2_Name
InBlock.gifGraph1.C2_Values 
= array_C2_values
InBlock.gifGraph1.C2_Color 
= str_C2_Color
InBlock.gif
Rem 統計図を表示すります
InBlock.gif
Call Graph1.GraphShow
ExpandedBlockEnd.gif
End Sub

None.gif
None.gif


GraphArea.xls OCX用户控件说明文档

ContractedBlock.gif ExpandedBlockStart.gif GraphArea.xls
None.gifGraph_Area クラス                
None.gif    統計図を表しています。            
None.gif                
None.gifカスタムパブリック プロパティ:                
None.gif
None.gif    属性名    タイプ    既定値    説明
None.gif    Graph_Name    String    在庫状推移状況    統計図の名称を取得または設定します。
None.gif    Graph_Width    Long    
9975    統計図の幅を取得または設定します。
None.gif    Graph_Height    Long    
6975    統計図の高さを取得または設定します。
None.gif    Y_Name    String    台数    Y軸の名称を取得または設定します。
None.gif    Y_Min    Integer    
0    Y軸の最小値を取得または設定します。
None.gif    Y_Max    Integer    
350    Y軸の最大値を取得または設定します。
None.gif    Y_Maj    Integer    
50    Y軸の目盛を取得または設定します。
None.gif    X_Name    String    ラウンド    X軸の名称を取得または設定します。
None.gif    X_Min    Integer    
1    X軸の最小値を取得または設定します。
None.gif    X_Max    Integer    
8    X軸の最大値を取得または設定します。
None.gif    X_Maj    Integer    
1    X軸の目盛を取得または設定します。    
None.gif    C1_Name    String    全体    系列1の名称を取得または設定します。    
None.gif    C1_Color    String    #
800040    系列1の色を取得または設定します。    
None.gif    C1_Values    String配列    なし    系列1の値を取得または設定します。    
None.gif    C2_Name    String    AF    系列2の名称を取得または設定します。    
None.gif    C2_Color    String    #8080FF    系列2の色を取得または設定します。    
None.gif    C2_Values    String配列    なし    系列2の値を取得または設定します。    
None.gif
None.gifカスタムパブリック メソッド:                    
None.gif
None.gif    方法名    パラメーター    戻り値    機能    
None.gif    GraphShow    なし    なし    統計図を表示すります    
None.gif
None.gif注意事項:                    
None.gif    ①コンポーネントファイル名は<GraphArea.ocx>です。(プログラムを配布する時、なくなってはいけません。)                
None.gif    ②支持を提供するファイル名は<OWC11.DLL>です。(プログラムを配布する時、なくなってはいけません。)                
None.gif

转载于:https://www.cnblogs.com/hbbpb/archive/2007/08/16/858914.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值