none
請問 DateTimePicker 元件比較問題 RRS feed

  • 問題

  • 我建立了一個 DateTimePicker 元件 ,想要判斷日期,但是卡關了,有很多疑問

    像是 我想判斷 選取的日期和今天的星期是不是一樣 ,判斷式 DateTimePicker.Value.DayOfWeek = Now.DayOfWeek 

    數值都顯示 4,但得出來的結論 為什麼會等於 false 呢?

    又或,我想要比對選取的日期和今天日期是否一致,下拉日曆選擇了,判斷式使用 DateTimePicker.Value.Day = Now.Day

    即使選擇了今天的日期,得出來的結果一樣是  false 。

    試了好久,找不到原因 ,DateTimePicker 元件 沒有寫事件之類的程式碼,是我漏了什麼步驟嗎?

    使用的版本是 2019

    更新:後來改用 .Equals 達成目的



    • 已編輯 想不到ID 2021年4月15日 下午 10:03 已解決
    2021年4月15日 上午 02:53

解答

  • 我加了一個DateTimePicker到Form, 產生一個名為DateTimePicker1的變數, 然後使用下面的程式碼:

    If DateTimePicker1.Value.DayOfWeek = Now.DayOfWeek Then
                MessageBox.Show("True")
    End If
    
    If DateTimePicker1.Value.Day = Now.Day Then
                MessageBox.Show("True")
    End If
    兩個判斷式都會得到True, 您的程式寫的是DateTimePicker, 不是DateTimePicker1, 是否寫錯?


    • 已編輯 tihsMVP 2021年4月16日 上午 12:52
    • 已標示為解答 想不到ID 2021年4月17日 下午 06:59
    2021年4月16日 上午 12:51

所有回覆

  • 我加了一個DateTimePicker到Form, 產生一個名為DateTimePicker1的變數, 然後使用下面的程式碼:

    If DateTimePicker1.Value.DayOfWeek = Now.DayOfWeek Then
                MessageBox.Show("True")
    End If
    
    If DateTimePicker1.Value.Day = Now.Day Then
                MessageBox.Show("True")
    End If
    兩個判斷式都會得到True, 您的程式寫的是DateTimePicker, 不是DateTimePicker1, 是否寫錯?


    • 已編輯 tihsMVP 2021年4月16日 上午 12:52
    • 已標示為解答 想不到ID 2021年4月17日 下午 06:59
    2021年4月16日 上午 12:51
  • 感謝大大幫我測試,第一次用 DateTimePicker 的元件,

    前兩天找了好幾個小時的資料,因為專案是複製整個目錄,有跳出路徑問題,以為是複製路徑出問題,

    試了各種方式,又建新專案在測試,改用 .Equals 發現是自己要的結果,就直接用 .Equals 。

    看到回覆又去試了一下,發現用等於( = )確實也是True。

    因為一次設了80個 DateTimePicker ,兩個一組,一個選日期,一個選時間,兩個設定的名字太像,

    打錯了元件的名字鬧了笑話,非常感謝

    2021年4月17日 下午 06:59