У меня есть программа ниже, которая, кажется, не делает то, что я хочу, чтобы она делала. В общем случае псевдокод выглядит следующим образом: введите количество миль (miles.text), нажмите кнопку и проверьте: равен ли введенный пробег или меньше, чем радиус пробега (milestotextbox) в базе данных? Если это так, возьмите скорость загрузки грузовика, которая соответствует этому радиусу (truckloadratetext), и отобразите ее в текстовом поле с именем «rate» (rate.text), а если нет, продолжайте поиск до EOF. Я показал код ниже. Это позволяет мне ввести пробег, но не проверяет и не отображает результат.
Данные в таблице выглядят так:
ID MILESTO TRUCKLOADRATE
1 50 200
2 100 300
3 200 700
4 300 800
Так что, если кто-то вводит пробег, например, 10, я хочу, чтобы он брал стоимость погрузки в 200 долларов. Если кто-то введет 250, скорость будет 800. Я сейчас не слишком зациклен на том, что происходит, если пробег выходит за пределы допустимого диапазона. Просто пытаюсь понять, почему механика чего-то подобного не работает. Я впервые использую записи с командой LOOP, поэтому я стараюсь, чтобы это было просто с моей программой.
Что я могу делать не так? Заранее спасибо и надеюсь, что всем удачного Нового Года!
Public Class Form1
Private Property EOF As Boolean
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
'TODO: This line of code loads data into the '_test_2DataSet.test' table. You can move, or remove it, as needed.
Me.TestTableAdapter.Fill(Me._test_2DataSet.test)
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Do Until EOF()
If Val(MilestoTextBox.Text) <= Val(Miles.Text) Then
rate.Text = TruckloadTextBox.Text
End If
Loop
End Sub
End Class