mikeo_410


ChartCntlの更新

 ドキュメントの添付を忘れました。

ChartCtrlユーザーコントロール.pdf

 「簡単チャート(ChartCtrl)

 


 V2.3 4/22 2008

1.変更内容

今回は、描画タイミングについてニーズを明確にしました。

  1. 最初からデータがそろっていて、1回で描画する。
  2. ボタン操作などで、追加の表示をする。
  3. ボタン操作などで、新たなデータを表示する。
  4. 変化するデータをリアルタイムに表示する。
  5. クロスラインカーソルをdisableにする。

 これを実現するために、以下の変更しました。

  1. ResumeDrawing()の変更
  2. SaveMetafile()の追加

1.2.ResumeDrawing()の変更

 1.2.1.ResumeDrawing(bool clear)を追加

ResumeDrawing(true) とした場合は、これまでの描画データを破棄します。
ResumeDrawing()、ResumeDrawing(false)の場合は、継続した描画をします。この場合は、内部で保持しているメタファイルが次第に大きくなっていきます。リアルタイム表示など、更新が頻繁な場合は使用できません。

 1.2.2.ResumeDrawing(byte[] metadata)を追加

軸など固定的に表示する部分と、リアルタイムに更新する部分がある場合に、固定的に表示する部分を保存しておいて、繰り返し利用できるようにしました。metadataは、SaveMetafile()で退避したデータに限られます。

1.3.SaveMetafile()の追加

軸など固定的に表示する部分と、リアルタイムに更新する部分がある場合に、固定的に表示する部分を保存しておいて、繰り返し利用できるようにしました。
固定的に表示する部分を描画したら、EndDrawing()を呼び出し、その後、
byte[] metadata=SaveMetafile();
として、保存します。

1.4.クロスラインカーソルをdisableに

動作確認していて気が付きました。クロスラインカーソル(グラフィックカーソル)が上手く表示できません。試行錯誤しましたが、ダメです。
良く考えて見れば当然で、常時書き換えている状態には、表示とXORを取る方法で、上手く行くわけがありません。
何か、代案が見つかるまで棚上げにします。

2.今回見送ったこと

クロスラインカーソルの件以外で、以下の件を見送りにしました。
ウインドウをリサイズすると、線幅も拡大縮小されます。これは、メタファイルのデータを描画する部分で対応できるものと思いますが、特に差しさわりが内容なので見送りました。


 


東戸塚 マンション 市川 不動産 松戸市 不動産 アルパイン チラシ 印刷