2011-12-15 83 views
2

我在一個機器視覺項目中工作。在我的項目中,我正在使用相機進行印刷檢查。 在我的應用程序中,我使用一個picturebox在屏幕上顯示圖像和兩個按鈕。在兩個按鈕中,一個按鈕用於實時顯示,另一個用於fullscreen.With livedisplay按鈕,我在while循環中的圖片框中顯示圖像。在while循環的同時,我必須按全屏按鈕。但我無法按全屏按鈕,因爲在循環運行時,它不允許我推動窗體的任何按鈕。 (循環有一段時間)爲什麼會發生這種情況?如何在循環運行時單擊此按鈕?while循環運行時如何按下按鈕?

回答

1

一個解決方案可以不是運行while循環;使用具有一定間隔的計時器並在計時器滴答時更新圖片框中的圖像。當用戶點擊Liveupdate按鈕時,您可以啓動計時器。您可以保持這個間隔非常低(例如100毫秒),這樣您的更新就會給人一種生活的感覺。這會在兩次更新之間給出一些時間間隔,當應用程序可以爲其他用戶操作(如其他按鈕單擊)輸入輸入時。

3

歡迎來到多線程的美妙世界。您需要將您的while循環放在單獨的線程中,以便您的UI保持響應。線程化是一個漫長而深刻的概念,有一百萬種方法可以實現。

可能路徑阻力最小的是使用BackgroundWorker線程模型。有關更多詳細信息,請參見here

+0

我無法正確地獲得鏈接.. – 2011-12-15 05:22:33