

上面的是正常的,不同顏色的畫筆正常顯示,
下面的圖片是運行一段時間后的,竟然變成了同一個顏色!!!!
什么鬼
uj5u.com熱心網友回復:
有沒有人啊 ~~~~~~~~~~~~~~uj5u.com熱心網友回復:
代碼如下:unsigned int color[4]={255,255*255,255*255*255,255*255*255*100};
long int num_to_change=point_num-disp_num;
CPen tPen2;
if(num_to_change<=0)
num_to_change=0;
for (unsigned char j=0;j<4;j++)
{
tPen2.CreatePen(0,1,color[j]);
pDC->SelectObject(&tPen2);
for (long unsigned int i=1;i<point_num&&i<disp_num;i++)
{
pDC->MoveTo(X_basic+(i)*50/XDispScale,Y_basic-buff_out[(num_to_change)*scoll_position/100+i-1][j]*40/YDispScale);
pDC->LineTo(X_basic+(i+1)*50/XDispScale,Y_basic-buff_out[(num_to_change)*scoll_position/100+i][j]*40/YDispScale);
}
}
// 繪制距離探測點
CBrush tBrush2;
for (j=0;j<4;j++)
{
tPen2.CreatePen(0,1,color[j]);//rxh1.9畫筆決定圓的外側
pDC->SelectObject(&tPen2);
tBrush2.CreateSolidBrush(color[j]);//rxh1.9畫刷決定圓的內側
pDC->SelectObject(&tBrush2);
for (i=0;i<point_num&&i<disp_num;i++)
{
int TmpCtDispX=X_basic+(i+1)*50/XDispScale;
int TmpCtDispY=Y_basic-buff_out[(num_to_change)*scoll_position/100+i][j]*40/YDispScale;
pDC->Ellipse(TmpCtDispX-3,TmpCtDispY-3,TmpCtDispX+3,TmpCtDispY+3);
}
}
uj5u.com熱心網友回復:
主要是這些線用的顏色變數看看是否被改變了uj5u.com熱心網友回復:
pDC->SelectObject( 選入的GDI的資源需要恢復CPen *pOldPen = pDC->SelectObject(&newPen);
……
pDC->SelectObject(pOldPen)
uj5u.com熱心網友回復:
看看有沒有記憶體泄露uj5u.com熱心網友回復:
搜“GDI泄露檢測”轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/127696.html
標籤:界面
上一篇:求助帖,自繪listbox 如何控制當前界面顯示資料的多少
下一篇:mfc vc 串口資料
