Code:
case WM_TIMER:
j++; // counter for moving graph
t++;
ClearBitmap(graph1dc);
ClearBitmap(graph2dc);
SetRect(&rect1,30,10,431,261);
SetRect(&rect2,30,10,431,261);
BlackScale(graph1dc,j);
BlackScale(graph2dc,j);
BlueLine(graph1dc,j);
BlueLine(graph2dc,j);
hBlackbrush = CreateSolidBrush (RGB (0,0,0)) ;
FrameRect(graph1dc,&rect1,hBlackbrush);
FrameRect(graph2dc,&rect2,hBlackbrush);
InvalidateRect(hWnd,NULL,0);
return 0;
case WM_PAINT:
hdc = BeginPaint(hWnd, &paintstruct); /* get DC */
PlotGraph();
SelectObject (con1dc, hBitmap1) ;
SelectObject (con2dc, hBitmap2) ;
SelectObject (con3dc, hBitmap3) ;
BitBlt(hdc,560,45,500,290,graph1dc,0,0,SRCCOPY);
BitBlt(hdc,560,380,500,290,graph2dc,0,0,SRCCOPY);
BitBlt(hdc,55,100,180,500,picdc,0,0,SRCCOPY);
BitBlt(hdc,312,400,cxBitmap[0],cyBitmap[0],con1dc,0,0,SRCCOPY);
BitBlt(hdc,312,442,cxBitmap[1],cyBitmap[1],con2dc,0,0,SRCCOPY);
BitBlt(hdc,308,482,cxBitmap[2],cyBitmap[2],con3dc,0,0,SRCCOPY);
/* now, copy memory image onto screen */
EndPaint(hWnd, &paintstruct); /* release DC */
break;
return 0;
.....
....
....
....
And functions that I use to draw lines
/*for clear a bitmap
void ClearBitmap(HDC hdc)
{
HBRUSH hWhitebrush;
hWhitebrush = CreateSolidBrush(RGB(255,255,255));
PatBlt(hdc,0,0,450,310,PATCOPY);
DeleteObject(hWhitebrush);
}
void BlackScale(HDC hdc,int j)
{
HPEN hBlackpen;
int i,k,num,fp;
char szBuffer[10];
int Xaxis[10][41] = {10,1 ,1 ,1 ,1 ,5 .......};
hPen = CreatePen(PS_SOLID,1,RGB(0,0,0));
SelectObject(hdc,hPen);
for (i=0;i<=260;i=i+25)
{
MoveToEx(hdc,20,i+10,NULL);
LineTo(hdc,30,i+10);
}
.......
.......
SelectObject(hdc,hOldpen);
DeleteObject(hPen);
}
void BlueLine(HDC hdc,int j)
{
HPEN hBluepen;
int i,num,k;
int Xaxis[10][41] = {10,1 ,1 ,1 ,1 ,5 ,1 ,1 ,1 ,1 ,10,1 ,1 ,1 ,1 ,5 ,1 ,1 ,1 ,1 ,10,......};
hBluepen = CreatePen(PS_DOT,1,RGB(22,80,180));
hOldpen = (HPEN) SelectObject(hdc,hBluepen);
hPen = CreatePen(PS_DOT,1,RGB(22,80,180));
SelectObject(hdc,hBluepen);
for (i=0;i<=260;i=i+25)
{
if (i>0 || i<260 )
{
MoveToEx(hdc,30,i+10,NULL);
LineTo(hdc,430,i+10);
}
}
.......
.......
SelectObject(hdc,hOldpen);
DeleteObject(hBluepen);
}
void PlotGraph()
{
hPen = CreatePen(PS_DASH,1,RGB(0,0,0));
hOldpen = (HPEN) SelectObject(graph1dc,hPen);
hOldpen = (HPEN) SelectObject(graph2dc,hPen);
SelectObject(graph1dc,hPen);
SelectObject(graph2dc,hPen);
Polyline(graph1dc,Level,t);
Polyline(graph2dc,FR,t);
SelectObject(graph1dc,hOldpen);
SelectObject(graph2dc,hOldpen);
DeleteObject(hPen);
}
Thank you very much.