Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.62/13: Рейтинг темы: голосов - 13, средняя оценка - 4.62
bmstu-team
 Аватар для antonboom
301 / 136 / 91
Регистрация: 10.01.2012
Сообщений: 420
Записей в блоге: 10

TextBox проверка на пустоту, но разрешение нуля

22.10.2012, 06:58. Показов 2732. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, просмотрел все 17 страниц по поиску *textbox*, но не нашел ничего похожего.
Мой вопрос следующий:
Есть величина Hm (высота полета) для нее несколько формул. Переменные в формуле задаются из соответствующих textbox'ов. Так как алгоритм линейный, обычно, если переменная не указана до формулы (ну кроме в описание типа), то компьютер пропускает формулу и идет к следующей, так проходит все и, если есть все величины, решает.
Как делаю я:
- Перевод из строкового в символьный
- Формулы
- Перевод из символьного в строковый и вывод в textbox'сы

Но тут проблема. Компьютер видя переменную, значение которой не задано, дает ей ноль при переводе (все правильно, как я понял, пустота -> 0) и поэтому значение Hm в конце по нулям.
Я поставил ограничение, если textbox не пустой, то переменная равна значению из него.
Но оно не работает. Подскажите, пожалуйста, что не так. То есть необходимо разрешение нуля, но проверка на пустоту, ведь я могу задать значение ноль (может так по условию задачи нужно будет).

К теме, если позволите еще тройку вопросов:
- Есть ли в VB 6 ссылки между формами?
- Можно ли сделать цикл *пока все textbox'сы не заполнятся*
- Есть ли какое-нибудь более удачливое округление, кроме Round, а то оно у меня не всегда работает(криворукий)

Вот пример кода:

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Private Sub chet_Click()
Dim g, al, t, L, Hm, Vo, TO_RAD, TO_DEG, Vyo, Vmax, Vmin As Double
TO_RAD = 3.14159265358979 / 180
TO_DEG = 1 / TO_RAD
 
 If g1(0).Text <> "" Then
 g = Val(g1(0).Text)
End If
 If Al1(1).Text <> "" Then
 al = Val(Al1(1).Text)
End If
 If L1(1).Text <> "" Then
 L = Val(L1(1).Text)
End If
 If Hm1(1).Text <> "" Then
 Hm = Val(Hm1(1).Text)
End If
 If Vo1(1).Text <> "" Then
 Vo = Val(Vo1(1).Text)
End If
 If T1(1).Text <> "" Then
 t = Val(T1(1).Text)
End If
 If Vyo1(0).Text <> "" Then
 Vyo = Val(Vyo1(0).Text)
End If
 If Vmax1(1).Text <> "" Then
 Vmax = Val(Vmax1(1).Text)
End If
If Vmin1(1).Text <> "" Then
Vmin = Val(Vmin1(1).Text)
End If
 
Hm = ((Vo ^ 2 * Sin(al * TO_RAD) ^ 2)) / (2 * g)
Hm = (Vyo ^ 2) / (2 * g)
Hm = (t ^ 2 * g) / 8
Hm = (Vmax ^ 2 - Vmin ^ 2) / 2 * g
 
g1(0).Text = Str(g)
Al1(1).Text = Str(al)
L1(1).Text = Str(L)
Hm1(1).Text = Str(Hm)
Vo1(1).Text = Str(Vo)
Vyo1(0).Text = Str(Vyo)
Vmax1(1).Text = Str(Vmax)
Vmin1(1).Text = Str(Vmin)
T1(1).Text = Str(t)
 
End Sub
Заранее благодарен.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
22.10.2012, 06:58
Ответы с готовыми решениями:

Проверка нескольких textbox на пустоту, а также проверка их значения
Имеется textbox1, textbox2, textbox3, button1. Нужно сделать так, чтобы проверялось условие: Если хотя бы один из textbox пуст или его...

Проверка на пустоту Textbox-а
Помогите пожалуйста, я ввожу код в Textbox и он заполняет Блокнот, мне нужно сделать так: еслиTextbox пуст выводится сообщение об ошибке. Я...

Проверка TextBox на пустоту
Помогите разобраться нужно сделать проверку TextBox пустой или нет + на форме есть 14 CheckBox нужно сделать так чтобы если выбираем...

3
 Аватар для Апострофф
9908 / 3928 / 742
Регистрация: 11.10.2011
Сообщений: 5,908
22.10.2012, 07:37
Цитата Сообщение от antonboom Посмотреть сообщение
Visual Basic
1
Dim g, al, t, L, Hm, Vo, TO_RAD, TO_DEG, Vyo, Vmax, Vmin As Double
Вообще говоря, такая запись для VB(A) (VBNET я не рассматриваю?) не совсем правильная, т.к. тип Double здесь будет изначально иметь только Vmin, остальные - Variant.
Но в контексте данной задачи это может быть к лучшему?

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
Dim g, al, t, L, Hm, Vo, TO_RAD, TO_DEG, Vyo, Vmax, Vmin 'As Double
TO_RAD = 3.14159265358979 / 180
TO_DEG = 1 / TO_RAD
If g1(0).Text <> "" Then
 g = Val(g1(0).Text)
End If
 If Al1(1).Text <> "" Then
 al = Val(Al1(1).Text)
End If
 If L1(1).Text <> "" Then
 L = Val(L1(1).Text)
End If
 If Hm1(1).Text <> "" Then
 Hm = Val(Hm1(1).Text)
End If
 If Vo1(1).Text <> "" Then
 Vo = Val(Vo1(1).Text)
End If
 If T1(1).Text <> "" Then
 t = Val(T1(1).Text)
End If
 If Vyo1(0).Text <> "" Then
 Vyo = Val(Vyo1(0).Text)
End If
 If Vmax1(1).Text <> "" Then
 Vmax = Val(Vmax1(1).Text)
End If
If Vmin1(1).Text <> "" Then
Vmin = Val(Vmin1(1).Text)
End If
If Not IsEmpty(Vo) And Not IsEmpty(al) And Not IsEmpty(g) Then
  Hm = ((Vo ^ 2 * Sin(al * TO_RAD) ^ 2)) / (2 * g)
ElseIf Not IsEmpty(Vyo) And Not IsEmpty(g) Then
  Hm = (Vyo ^ 2) / (2 * g)
ElseIf Not IsEmpty(t) And Not IsEmpty(g) Then
  Hm = (t ^ 2 * g) / 8
ElseIf Not IsEmpty(Vmax) And Not IsEmpty(Vmin) And Not IsEmpty(g) Then
  Hm = (Vmax ^ 2 - Vmin ^ 2) / 2 * g
Else
  MsgBox "Некорректные данные"
End If
1
bmstu-team
 Аватар для antonboom
301 / 136 / 91
Регистрация: 10.01.2012
Сообщений: 420
Записей в блоге: 10
22.10.2012, 16:23  [ТС]
спасибо.
А остальные вопросы можно?)

 Комментарий модератора 
Правило 5.16 Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов платных услуг. Один вопрос - одна тема.
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38200 / 21132 / 4310
Регистрация: 12.02.2012
Сообщений: 34,738
Записей в блоге: 14
24.10.2012, 12:30
Цитата Сообщение от antonboom Посмотреть сообщение
Есть ли в VB 6 ссылки между формами?
- в любом месте пиши Form1.[свойства_или_методы]
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
24.10.2012, 12:30
Помогаю со студенческими работами здесь

Проверка на пустоту textBox'a
на форме 7 textBox. 4 из них должны быть заполнены а в остальные 3 выводится результат. нужно проверить 4 текст бокса на пустоту. если из...

Проверка textBox на пустоту
Как проверить ТекстБокс на пустоту? Добавлено через 1 минуту Вернее, как сделать так, чтобы данные не вносились, если ТекстБокс...

Проверка TextBox на пустоту
Не смогла разобраться с TextBox, проверяю на пустоту, что -то пошло не так Private Sub CommandButton1_Click() Dim lr As Long ...

Проверка TextBox на пустоту
Здравствуйте. Нужно проверить есть ли текст в Textbox. Если есть, то выполнить &quot;такой-то код&quot;, а если пусто - вывести окно. Вот я...

Не работает проверка textBox на пустоту
ставлю проверку на текстбокс пустой ли он, если да то выскакивает MessageBox, код такого вида if (textBox1.Text.Length == 0 ||...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
Дальние перспективы сервера - слоя сети с космологическим дизайном интефейса карты и логики.
Hrethgir 07.04.2026
Дальнейшее ближайшее планирование вывело к размышлениям над дальними перспективами. И вот тут может быть даже будут нужны оценки специалистов, так как в дальних перспективах всё может очень сильно. . .
Горе от ума
kumehtar 07.04.2026
Эта мне ментальная установка, что вот прямо сейчас, мол, мне для полного счастья не хватает (нужное вписать), и когда я этого достигну - тогда и полный кайф. Одна из самых сильных ловушек на пути. . . .
Использование значений реквизитов справочника в документе, с определенными условиями и правами
Maks 07.04.2026
1. Контроль срока действия договора Алгоритм из решения ниже реализован на примере нетипового документа "ЗаявкаНаРаботу", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если. . .
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru