================================================================================================== VC++.NET 2003、2005、2008で TeeChart Pro 8J ActiveX を使用するMFC アプリケーションの作成 ================================================================================================== MFCアプリケーションの作成で TeeChart Pro 8J ActiveX を使用する基本的な方法を説明します。 1.TeeChart Pro 8J ActiveXの登録 「ツール」メニューの「ツールボックスアイテムの選択(追加と削除)」から 「COMコンポーネント」タブを選択し、必要なTeeChartPro8 ActiveXのコントロールを選択します。 注意:ツールボックスにコントロールを登録せず、「項目5の注意」のように直接フォーム上でマウスを右クリックして コントロールを貼ることもできます。 2.新規プロジェクトの作成 「新しいプロジェクト」ダイアログから「Visual C++ プロジェクト」の 「MFCアプリケーション」を選択します。 3.アプリケーションの種類 「MFCアプリケーションウィザード」ダイアログの「アプリケーションの種類」項目で 「シングルドキュメント」、「マルチドキュメント」、「ダイアログベース」のいずれか選択します。 4.基本クラスの設定 アプリケーションの種類が「シングルドキュメント」か「マルチドキュメント」の場合、 「生成されたクラス」項目の「基本クラス」で「CFormView」を選択します。 5.デザイン フォームにコントロールを貼ります。 注意:フォーム上でマウスを右クリックし、「TeeChart Pro Activex control v8」を選択してコントロールを貼ることもできます。 6.TeeChart Pro 8Jのコントロールの変数の追加 フォームのデザイン画面で TeeChartPro8 ActiveXコントロールを右クリックして、「変数の追加」を選択します。 7.変数名を設定 「メンバ変数の追加」ダイアログで変数名を設定します。 8.クラスの追加 8-1 フォームのデザイン画面を閉じた状態で、「プロジェクト」メニューから「クラスの追加」を選択します。 8-2 カテゴリが「Visual C++」を確認して「TypelibからのMFCクラス」を選択します。 注意:フォームのデザイン画面が表示してあると、この項目が表示されません。 8-3 「TypeLibクラス追加ウィザード」画面の「使用できるタイプライブラリ」から 「TeeChart Pro Activex control v8<1.0>」を選択します。 「インターフェイス」から総てのクラスを追加します。 注意1:クラスの追加元をファイルにして、TeeChart8.ocxを選択しても結構です。 注意2:プロジェクトに各階層プロパティのヘッダファイルが追加されます。 ●コード例 下記はOnInitDialog()でチャートを表示する例です。 // ******************* 追加 ************************ #include "CSeries.h" // ******************* 追加 ************************ BOOL CtestDlg::OnInitDialog() { CDialog::OnInitDialog(); // このダイアログのアイコンを設定します。アプリケーションのメイン ウィンドウがダイアログでない場合、 // Framework は、この設定を自動的に行います。 SetIcon(m_hIcon, TRUE); // 大きいアイコンの設定 SetIcon(m_hIcon, FALSE); // 小さいアイコンの設定 // TODO: 初期化をここに追加します。 // ******************* 追加 ************************ CSeries Series; chart.AddSeries(chart.scBar); // 縦棒系列を設定 Series = chart.get_aSeries(0); // 0番目の系列を指定 Series.FillSampleValues(10); // ランダムポイントを設定 // ******************* 追加 ************************ return TRUE; // フォーカスをコントロールに設定した場合を除き、TRUE を返します。 }