冰楓論壇

標題: VB新手寫一個小小程式遇到問題 [打印本頁]

作者: cpu66300    時間: 2015-8-28 15:37
標題: VB新手寫一個小小程式遇到問題
本帖最後由 cpu66300 於 2015-8-28 15:44 編輯

我要寫這樣!!!!!這是一個自訂的例如初始值打6 終止值打16  =121  從6加到16 的計算 22222.jpg

裡面內容 我打了這樣 11111.jpg      0錯誤  0警告 要測試運行點了計算 他就直接跳回這個畫面了

小弟遇到問題還不能解決煩請各位大大能解說 感恩





作者: s860070    時間: 2015-8-28 15:42
Clng改成Val
作者: cpu66300    時間: 2015-8-28 15:47
s860070 發表於 2015-8-28 15:42
Clng改成Val

感恩       可以了   感謝大大   奇怪位捨麼不能使用Cint阿 有差別嗎 因為我還不懂  ><
作者: s860070    時間: 2015-8-28 16:03
本帖最後由 s860070 於 2015-8-28 16:19 編輯

CInt是把數值轉換成整數,但是遇到非數值字串將會錯誤
Val是將數值字串轉換成數值(空的會轉換成0)

你要不要改成Function 比較好維護跟擴充介面呀?
完整程式碼:

Public Function 累加(ByVal 開始值 As Integer, ByVal 結束值 As Integer) As Long
        Dim i As Long = 0
        Dim Sum As Long = 0

        For i = 開始值 To 結束值 Step 1

            Sum += i

        Next

        Return Sum

    End Function

    Private Sub Btn_Calculate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Btn_Calculate.Click
        Dim 開始值 As Integer = Val(Txt_Start.Text)
        Dim 結束值 As Integer = Val(Txt_Stop.Text)

        Txt_Final.Text = "從 " & 開始值 & " 加到 " & 結束值 & " = " & 累加(開始值, 結束值)

    End Sub

    Private Sub Txt_Start_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_Start.KeyPress

        '禁止0~9和BackSpace以外的值輸入
        If InStr("0123456789" & Chr(8), e.KeyChar) = 0 Then e.KeyChar = ""

    End Sub

    Private Sub Txt_Stop_KeyPress(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles Txt_Stop.KeyPress

        '禁止0~9和BackSpace以外的值輸入
        If InStr("0123456789" & Chr(8), e.KeyChar) = 0 Then e.KeyChar = ""

    End Sub

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

        '結果唯讀
        Txt_Final.ReadOnly = True
        'TextBox的文字置中
        Txt_Start.TextAlign = HorizontalAlignment.Center
        Txt_Stop.TextAlign = HorizontalAlignment.Center
        Txt_Final.TextAlign = HorizontalAlignment.Center

    End Sub

作者: cpu66300    時間: 2015-8-28 16:25
s860070 發表於 2015-8-28 16:03
CInt是把數值轉換成整數,但是遇到非數值字串將會錯誤
Val是將數值字串轉換成數值(空的會轉換成0)

感恩大大的解說   我來試試看感恩
作者: fucker    時間: 2018-12-5 02:05
用Val()
印象中e語言叫做 到數值()




歡迎光臨 冰楓論壇 (https://bingfong.com/) Powered by 冰楓