[問題] 如何同時顯示兩個序列影像?

看板C_and_CPP (C/C++)作者時間16年前 (2009/06/11 11:35), 編輯推噓2(207)
留言9則, 5人參與, 最新討論串1/1
由於結果呈現的關係,需要於視窗影像中同時顯示兩個序列影像, 目前是以靜態分割為左右視窗讀取影像,故有兩個Ondraw()函式, 在此二函式中僅分別以for迴圈讀取影像。 但問題是程式執行時,兩個視窗影像不能同時更新, 每次都要一個跑完所有影像後,另一個才會開始作用, 故想請問各位是否有什麼方法可以解決此類問題呢?? 拜託拜託~幫幫忙吧... 由於到最後視窗兩邊的影像將會有處理上的時間差,可能左邊影像序列僅為讀取, 0.03秒一張,而右邊影像必須在讀進來後進行影像處理,處理時間約為0.4秒, 故兩邊影像之更新時間會有所不同,但目前連同時更新都無法做到.. Ondraw()函式如下 void GlobalView:: OnDraw(CDC * pDC) { CDecDoc* qDoc = GetDocument(); CString savename; for(p = 1368; p <= 1500; p++) { CString savename; EImageC24 Image savename.Format("E:/bmp/%d.bmp",p); Image.Load(savename); if (Image.Void() != TRUE) { Image.Draw(pDC->GetSafeHdc()); } } 上述副函式將有兩個。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.116.202.180

06/11 11:49, , 1F
並不是有關鍵字人家才會幫
06/11 11:49, 1F
※ 編輯: louciwa 來自: 140.116.202.180 (06/11 11:53)

06/11 12:21, , 2F
你可以畫在memory DC裡面, 等畫好了以後整張貼到window上面
06/11 12:21, 2F
※ 編輯: louciwa 來自: 140.116.202.180 (06/11 12:50)

06/11 13:22, , 3F
時間差可以用buffer緩衝解決 同時播的話用multi-thread(?)
06/11 13:22, 3F

06/11 18:05, , 4F
直接用Multi-Doc/View, 然後用InvalidateRgn要求重畫吧
06/11 18:05, 4F

06/11 18:06, , 5F
不同的view, 完全是獨立的
06/11 18:06, 5F

06/11 18:06, , 6F
要同步顯示的話, 你應該要用MemDC
06/11 18:06, 6F

06/11 18:07, , 7F
我現在所用的View有兩個類別,分別為class GlobalView
06/11 18:07, 7F

06/11 18:08, , 8F
和MyView, 請問所謂不同的View是這意思嗎??
06/11 18:08, 8F

06/11 18:08, , 9F
還是另有方法??
06/11 18:08, 9F
文章代碼(AID): #1AC7kLw7 (C_and_CPP)
文章代碼(AID): #1AC7kLw7 (C_and_CPP)