ダイアログに画像コントロール ボックス (CStatic) があります。ユーザーがダイアログのボタンを押すと、onPaint() で画像を描画する必要があります。問題は、ダイアログの読み込み時に画像が描画されることです。これを防ぎ、ボタンを押したときにのみ呼び出すにはどうすればよいですか。
私の onPaint コード;
void CStaticGraph::OnPaint()
{
POINT xy[1000];
CPaintDC dc(this); // device context for painting
CRect Recto;
char LocDim[80];
GetWindowRect(&Recto);
CPoint pBottom,pTop,pLeft;
CPoint p[50];
pBottom.SetPoint(0,0);
pTop.SetPoint(0,Recto.Height());
pLeft.SetPoint(Recto.Width(),Recto.Height());
dc.MoveTo(pBottom);
dc.LineTo(pTop);
dc.LineTo(pLeft);
int y[] ={80,120,180,200};
int x=0;
for(int i=0; i<sizeof(y);i++){
p[i].SetPoint(Recto.Height()-x,y[i]);
if(i>0){
dc.MoveTo(p[i-1]);
dc.LineTo(p[i]);
}
x+=50;
}
}
ご覧のとおり、グラフをプロットしているため、ボタンを押したときにデータ (y[] 値) を渡す必要もあります。私はまだそれをしていません。
ありがとう。