2014-04-28 76 views
0

我有一個窗口的應用程序,由哪個用戶可以打印他們的產品條碼值,也可以掃描它, 現在我正在尋找一些線程或其他方式, 如果用戶輸入5打印後打印的第一個值,功能等待用戶輸入文本框(我稱爲文本框up事件捕獲掃描值) 如果值是正確的,我的功能繼續執行或等待,直到用戶掃描適當的條形碼,如何等待用戶輸入功能使用c#

那麼我怎樣才能使方法或功能,可以等待用戶輸入,然後繼續執行。

  private void myFunction1() 
      { 

      for (i = 0; i < intPrintNo; i++) // Number Of Print 
       { 

      // here I write Code For Print My Barcode 
      // Now I want to wait For user Input in my text box 



        jumphere : 
         txtBarcode.Text = ""; 
         txtBarcode.Enabled = true; 
         txtBarcode.Visible = true; 
         txtBarcode.Focus(); 
         if (keyUp()== false) 
         { 
          txtBarcode.Text = ""; 
          txtBarcode.Enabled = true; 

          goto jumphere; 
         } 

         // If return True than for loop Continue for next Printing 




        } 


       } 
+0

如果你直到現在分享你已經編碼的東西,那將會阻止你的問題被降低......無論如何,窗口應用程序總是等待用戶輸入。 Windows窗體結構是基於事件的,所以無論何時發生事件,都可以調用事件處理程序。 –

回答

0

從我從你的問題的理解,要打印的由用戶指定值的條形碼,然後用戶可以掃描一樣,以驗證是否正確打印與否。

您可以通過以下步驟

  1. 用戶輸入值(以打印條形碼)在txtInput
  2. 印刷機打印按鈕(btnPrint)
  3. 打印按鈕事件處理程序將實現在Windows窗體的這一功能首先禁用自身和輸入文本框(btnPrint.Enabled = txtInput.Enabled = false; Application.DoEvents();),然後打印條碼並將焦點設置爲文本框txtVerify。
  4. 用戶將掃描文本框txtVerify中的條碼。
  5. 用戶將點擊驗證按鈕(btnVerify),它將比較txtInput和txtVerify中的值。
  6. 如果一切風輕雲淡的txtInput,txtVerify,使txtInput和btnPrint,焦點設置到txtInput爲下一個值
  7. 如果錯誤,做要緊。

編輯:按照有機磷農藥評論(最小用戶努力)

你可以在每次掃描後更改條形碼掃描器來後綴換行符(輸入)設置(你可以找到如何做到這一點的設置手冊隨條形碼提供)......所以現在,

第4步。用戶將掃描文本框txtVerify中的條形碼(掃描將在掃描結束時提供Enter按鈕)。 txtVerify.TextChanged事件處理程序將檢查在Enter中是否按下按鈕,如果是,請調用代碼以驗證(比較txtInput和txtVerify中的值) 第5步。從第012步上面的 刪除此步驟。如果一切正常,請清除txtInput ,txtVerify,啓用txtInput和btnPrint,將焦點設置爲txtInput以獲得下一個值 第7步。如果錯誤,則執行此操作。

此外,您還可以修改第一個文本框,當用戶按下回車鍵(因此,無需點擊打印按鈕)

因此,上述修改後,用戶將輸入的文本按ENTER鍵打印條形碼(這將打印條形碼)然後掃描(因爲焦點已經在txtVerify中)。如果一切正常,可以輸入新的值。

要重置屏幕,您可以提供「重置」按鈕。


很高興能幫到你!如果您發現它有幫助,請記住接受答案。

+0

感謝您的迴應, Bt我想噸最大限度地減少用戶的努力,所以有1000個序列號存儲在我的數據表中,其中包含所有信息, 用戶只需在文本框中給出像5號碼, 因此,我的功能將打印一個條形碼,並等待掃描和掃描後如果值是正確的下一個標籤將打印或等待,直到用戶掃描正確的條形碼。 –