[問題] 有關繪圖的問題

看板C_Sharp作者 (越夜越美麗)時間15年前 (2010/04/28 14:41), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串1/1
小弟目前在寫一個接收程式 透過Serialport接收data 並將其值繪出圖來看data變化 此接收一秒約有20筆data 為了要讓顯示出的圖表有即時效果 每收到一筆data就將其值丟至繪圖(一筆data就畫一個pixel) 且圖片顯示於picturebox裡 執行初期都可以達到應有的效果 但執行到一半就會出現以Messaege InvalidOperationExceptionwas unhandled 其他地方正在使用物件 Troubleshooting tips: If you are using the Graphics object after the GetHdc method, call the ReleaseHdc method. Get general help for exception. 所以想請教各位先進 為何會產生如此原因 是因為繪圖的速度趕不上傳輸的速度所造成的嗎? 還是有其他原因 不知道有什麼辦法可以解決此問題 感謝各位!! 以下是繪圖部份的code int SourcePerX = 0; //前一點的座標X int SourcePerY = 0 //前一點的座標y int Value_X = 0; private void DrawPixel(int value) { if (SourcePerX == BitmapWidth) //若畫到圖邊界clear重劃 { SourcePerX= 0; PicBlock = 0; //目前的座標的X //DrawFrame(); GraphSource.Clear(Color.Black); } int Value_Y = (int)(value * BitmapHeight / BitmapRange); //目前座標Y //繪圖將前一點座標連至目前座標 GraphSource.DrawLine(m_DrawPen, SourcePerX, SourcePerY, Value_X, Value_Y); SourcePerY = Value_Y; SourcePerX = Value_X ; Value_X ++; // picturebox1.Image = BitmapSource; <----發生message的位置 } -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.118.19.79

04/28 17:57, , 1F
use delegate
04/28 17:57, 1F
文章代碼(AID): #1BrzYKFi (C_Sharp)