Страница: 1 | 2 | 3 | 4 |
Вопрос: Ошибка
Добавлено: 23.12.09 15:54
Автор вопроса: ηikolaŠ~rus | ICQ: 604058327
здрасте!
Private Sub Command1_Click()
Label1.Caption = Label1.Caption + Val(1)
End Sub
почему выскакивает ошибка и как её исправить(мне надо чтоб при каждом нажитии на кнопку к лабелю прибовлялось число 1 ) если заменить + на & то он 1 прибавляет как строку
Ответы
Всего ответов: 54
Номер ответа: 1
Автор ответа:
Sharp
Лидер форума
ICQ: 216865379
Вопросов: 106
Ответов: 9979
Web-сайт:
Профиль | | #1
Добавлено: 23.12.09 16:49
Номер ответа: 2
Автор ответа:
ηikolaŠ~rus
ICQ: 604058327
Вопросов: 50
Ответов: 287
Профиль | | #2
Добавлено: 23.12.09 17:05
не идет
Номер ответа: 3
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #3
Добавлено: 23.12.09 17:06
Ты хочешь увеличивать число, которое хранится в виде текста, на единицу. Вместо того, чтобы конвертировать текст в число, а затем прибавлять, ты конвертируешь 1, которая является числом, в число, а затем прибавляешь к тексту. Смекаешь?
Номер ответа: 4
Автор ответа:
ηikolaŠ~rus
ICQ: 604058327
Вопросов: 50
Ответов: 287
Профиль | | #4
Добавлено: 23.12.09 17:06
а зачем сначала преоброзовывать в строку а потом в интегер??
Номер ответа: 5
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #5
Добавлено: 23.12.09 17:06
Номер ответа: 6
Автор ответа:
ηikolaŠ~rus
ICQ: 604058327
Вопросов: 50
Ответов: 287
Профиль | | #6
Добавлено: 23.12.09 17:07
VВDUnit
а можно както попроще ето объяснять
Номер ответа: 7
Автор ответа:
ηikolaŠ~rus
ICQ: 604058327
Вопросов: 50
Ответов: 287
Профиль | | #7
Добавлено: 23.12.09 17:10
блиин тоже не идетт
Номер ответа: 8
Автор ответа:
VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #8
Добавлено: 23.12.09 17:16
IIf - это функция. Принимает три аргумента. Первый - какое либо условие, в нашем случае "IsNumeric(Label1.Caption)" означает "является ли Label1.Caption числом?". Второй - это то, что возвратит функция, если условие ИСТИНА. Третий - то, что она возвратит, если условие ЛОЖЬ.
К строке мы не можем прибавить единицу, ибо это херь. Значит, сначала строку преобразовываем в число
Далее к числу прибавляем единицу
И результат обратно преобразуем в строку.
Которую присваиваем Label1.Cpation
Номер ответа: 9
Автор ответа:
ηikolaŠ~rus
ICQ: 604058327
Вопросов: 50
Ответов: 287
Профиль | | #9
Добавлено: 23.12.09 17:23
спасибо за объяснеения
но почему я МЕНЯ ЕТОТ КОД НЕ ПАШЕТ ???????
Номер ответа: 10
Автор ответа:
LamerOnLine
ICQ: 334781088
Вопросов: 108
Ответов: 2822
Профиль | | #10
Добавлено: 23.12.09 17:40
Ну кто хранит значение переменных в лейблах? Издеваемся?
Заведи переменную типа Long, её инкрементируй и отображай.
Номер ответа: 11
Автор ответа:
VerhoLom
Вопросов: 20
Ответов: 285
Профиль | | #11
Добавлено: 23.12.09 18:03
Попробуйте вместо Val использовать CLng и им подобные...
Но тока правила хорошего тона требуют, чтобы проверялось на IsNumeric значение в лейбле...
Номер ответа: 12
Автор ответа:
VerhoLom
Вопросов: 20
Ответов: 285
Профиль | | #12
Добавлено: 23.12.09 18:07
Private Sub Command1_Click()
Label1.Caption = CStr(Iif(IsNumeric(Label1.Caption),0,CLng(Label1.Caption)) + 1)
End Sub
Номер ответа: 13
Автор ответа:
Smith
ICQ: adamis@list.ru
Вопросов: 153
Ответов: 3632
Профиль | | #13
Добавлено: 23.12.09 19:27
LOL +1
Номер ответа: 14
Автор ответа:
UnDeAdZak
Вопросов: 80
Ответов: 476
Профиль | | #14
Добавлено: 23.12.09 23:01
БЛИН!!!! Вы чё творите???
ВСЁ!!!
А он вместо того чтобы значение лэйбла в числовое переводить , еденицу(итак уже число!) переводит в число.
Номер ответа: 15
Автор ответа:
Саня
ICQ: 553816426
Вопросов: 10
Ответов: 99
Профиль | | #15
Добавлено: 23.12.09 23:24
UnDeAdZak, нервные клетки не воснанавливаются ))