ピクチャーコントロール変数を用意して、グラフを書いているのですが、
ピクチャーコントロールの描画範囲を超えて、(というよりかは、関係なしに)
書かれてしまいます。
どのように、設定したらコントロールないにおさまりますか?
CClientDC myPictDC(&m_graph);//m_graph(ピクチャコントロールの変数)
CPen myPen1(PS_SOLID, 1, RGB(0,0,255));
CPen* oldPen = myPictDC.SelectObject(&myPen1);
myPictDC.Rectangle(2,140,12,(130-sum1));//四角形を用いてグラフにする
//以下省略
とりあえず、
CDC::IntersectClipRect()で描画範囲を限定できます。
#ピクチャーコントロールは、別に指定区域に
#独自の描画をするために用意されているものではないのですが、
#よくこういう利用法を見かけますね...
dairygoodsさんありがとうございます。
追記なのですが、MFCで作成しています。
あとできれば、具体的なコード例を示して頂くとありがたいです。
> あとできれば、具体的なコード例を示して頂くとありがたいです。
関数一つに具体例もなにもないと思うのですが、
どういった点が分からないのでしょうか?
例:
myPictDC.IntersectClipRect(0,0,100,100);
参考:
http://www.microsoft.com/japan/msdn/library/ja/vclib/html/_mfc_cdc.3a3a.intersectcliprect.asp
コントロールの大きさを取得してそこに入るように描くか
描画するのに必要な大きさを計算して,必要な大きさまで広げるとか
IntersectClipRectで問題なく、動きました。
皆様ありがとうございました。