2014-03-05 16 views
-1

禁用按鈕如何自動禁用按鈕在vb.net一段時間? 我的項目。我投票開始我只是從上午9時 - 10。所以,我在登錄之前應該和給定的時間後自動關閉按鈕用vb.net和SQL Server投票管理。如何自動在vb.net

+0

檢查在頁面加載的時間,必要時禁用按鈕。 – Cerveser

+0

不,它應該在給定時間後自動禁用 – user2815781

+0

您是否在爲美國公司工作?選舉?但嚴重的是,這是一個網絡或桌面應用程序? –

回答

0

在表單/頁面加載,使用日期時間來獲得當前的小時:

Dim currentDate As System.DateTime 
Dim currentHour As Integer 

currentDate = Date.Now() 
currentHour = currentDate.Hour 

If currentHour = 9 Or currentHour = 10 Then 
    button.Visible = False 
Endif 
+0

該按鈕必須根據時間自動設置爲啓用或禁用。你能幫忙嗎? – user2815781

+0

你的意思是說用戶不必刷新你的表單來獲得你的按鈕的新狀態? – Lovy

+0

之前或指定的時間後,用戶不能使用該按鈕,即使他刷新\ – user2815781

2

運行,從這個角度上應該循環在啓動一個Thread永遠。檢查DateTime.Now以檢查它當前的時間。 EnableDisable如果時間在您分配的時間之間。然後計算在窗口結束之前需要等待的時間,在該時間段內將thread設置爲sleep

編輯:示例代碼

確保您有這個頂部。 Imports System.Threading

Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs) 
    Dim myThread As System.Threading.Thread 
    myThread = New System.Threading.Thread(AddressOf ThreadLoop) 
    myThread.Start() 
End Sub 

Private Sub ThreadLoop() 
    While True 
     Dispatcher.Invoke(
      Sub() myButton.IsEnabled = (DateTime.Now.Hour = 9)) 
     Thread.Sleep(10000) ' This implementation just rechecks every 10 seconds 
    End While 
End Sub 

注意:該解決方案將自動更新UI的時間變化時。

+0

我可以知道編碼我的時間(9 am-10am)\ – user2815781

+1

編碼????????? – user2815781

+0

@ user2815781我已經添加了示例代碼 – BenVlodgi