フォームの作成
では、さっそくプログラムを作成しましょう。
作成するプログラムでは、Accessのデータベース「国内定期航空月別旅客実績.mdb」に接続し、テーブル「旅客数」から3つのデータを読み込みステップチャートで表します。
GUIのデザイン
使用するコントロールは、C1ChartとADO.NET関係の「OleDbConnection」「OleDbDataAdapter」「DataSet」「DataView」ですが、「DataSet」だけはデータ連結操作で作成されます(各コントロールの設定については、次の項目で紹介していきます)。
データ連結の作成
最初に、Accessのデータベースを連結するために、OleDbDataAdapterコントロールを設定します。
1)フォームにOleDbDataAdapterコントロールを配置
「データアダプタ構成ウィザード」が起動するので、[新しい接続]から、Accessデータベースファイル「国内定期航空月別旅客実績.mdb」を選択します。[テスト接続]ボタンをクリックして接続を確認します。
接続が確認し、次へ進みます。
2)データベースファイルをプロジェクトに組み込む
データベースファイルをプロジェクトに組み込むかどうかを聞いてくるので、[いいえ]ボタンをクリックし、データベースにアクセスするためのSQLステートメント作成画面に移った後、[次へ]ボタンを押します。
「SQLステートメントの生成」画面にて[クエリビルダー]ボタンをクリックし、テーブル「旅客数実績」を追加して、「月名」「平成21年度」「平成22年度」のフィールドにチェックを入れます。クエリを実行し、12か月分のデータが抽出されることを確認してください。
3)「主キーの追加」メッセージボックスを表示
「主キーの追加」メッセージボックスが表示されたら、[完了]ボタンをクリックします。
4)OleDbDataAdapterコントロールのスマートタグを表示
「データセットの生成」をクリックするとダイアログボックスが表示されるので、「新規作成」が選択されているのを確認してください。
5)フォームの「Load」イベントハンドラでクエリを実行
下記のように、dataSetコントロールに組み込むコードを記述します。
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load OleDbDataAdapter1.Fill(DataSet11) End Sub
private void Form1_Load(object sender, EventArgs e) { oleDbDataAdapter1.Fill(dataSet11); }
6)フォームにdataViewコントロールを配置
フォームデザイナに戻り、フォームにdataViewコントロールを配置したら、下記のプロパティを設定します。このコントロールを使って、C1Chartとクエリ結果セットを連結します。
プロパティ | 設定値 |
AllowDelete | False |
AllowEdit | False |
AllowNew | False |
Table | dataSet11.旅客数実績 |
これで、C1ChartコントロールにAccessデータベースを連結する準備ができました。
ステップグラフの作成
続いて、C1Chartコントロールをフォームに配置し、ステップチャートを作成していきます。
1)C1Chartコントロールをツールボックスへ
ツールボックスからC1Chartコントロールのアイコンをフォームにドラッグアンドドロップします。Dockプロパティを「Fill」にしてフォーム全体に広げます。
2)「グラフのプロパティ」ダイアログボックスを表示
C1Chartコントロールのスマートタグから「プロパティ」をクリックし、「グラフのプロパティ」ダイアログボックスを表示します。左側のペインの「グラフ種」をクリックし、「ステップチャート,シンボル」を選びます。
3)「dataView1」に接続
左ペインの「データ-接続」をクリックし、「データソース」のリストから「dataView1」を選びます。
4)「series2」「series3」を削除
左ペインの「データ」をクリックし、「データセット」の「series2」「series3」を削除します。「series0」をクリックし「ラベル」を「平成21年度」に変更、「データ連結」の「X」を「月名」、「Y」を「平成21年度」に設定します。
同様の操作を「series1」に対しても行います。「series1」をクリックし「ラベル」を「平成22年度」に変更し、「データ連結」の「X」を「月名」、「Y」を「平成22年度」に設定します。
5)「X軸」「Y軸」のタイトルを変更
左ペインの「X軸」をクリックし、タイトルを「Axis X」から「月名」に変更します。続いて、「Y軸」をクリックし、タイトルを「Axis Y」から「旅客数」に変更します。なお、この時点で「適用」ボタンを押すと、これまでの設定がフォームに配置したC1Chartコントロールに反映されます。ただし、データはフォームのLoadイベントハンドラが実行されないとクエリ結果がDataSetに格納されませんので、フォームデザイン時は抽出データは反映されていません。
6)グラフのタイトルを設定
左ペインの「外観-ヘッダ」をクリックし、「表示」をクリックしてチェックを付け、「テキスト」に「国内定期航空月別旅客実績」と入力します。そして、[フォント]ボタンをクリックし、フォントサイズを「20」に設定します。また、前景色を「LimeGreen」に設定します。
7)凡例を表示
左ペインの「外観-凡例」をクリックし、「表示」をクリックしてチェックを付けます。これで、自動的に凡例が表示されます。[適用]ボタンを押すと、フォームに配置したC1Chartコントロールに凡例が表示されます。
8)プログラムの実行
これで、一通りグラフ作成の基本的な設定が終わりました。ここで一度プログラムを実行し、設定どおりのステップチャートができあがっているかどうか確認します。