Страница: 1 | 2 | 3 |
Вопрос: VB супер консоль
Добавлено: 14.01.10 17:10
Автор вопроса:
V1RR | Web-сайт:
Ответы
Всего ответов: 43
Номер ответа: 31
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #31
Добавлено: 18.01.10 00:13
с помощью api GetAsyncKeyState
Номер ответа: 32
Автор ответа: V1RR
ICQ: 636580
Вопросов: 8
Ответов: 29
Web-сайт:
Профиль | | #32
Добавлено: 18.01.10 14:07
В том-то что и пробовал, но почему-то не выходит
Номер ответа: 33
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #33
Добавлено: 18.01.10 17:15
ну дык погугли
Номер ответа: 34
Автор ответа: V1RR
ICQ: 636580
Вопросов: 8
Ответов: 29
Web-сайт:
Профиль | | #34
Добавлено: 19.01.10 20:07
Что-то не пойму как исправить ошибку.
Пишет "End Select without Select Case"
Вроде бы ж все правильно расставил? Почему ошибка?
Номер ответа: 35
Автор ответа: V1RR
ICQ: 636580
Вопросов: 8
Ответов: 29
Web-сайт:
Профиль | | #35
Добавлено: 19.01.10 20:07
Ошибка в строке 36
Номер ответа: 36
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #36
Добавлено: 19.01.10 21:35
Вообще всё неправильно. Даже затрудняюсь сказать где
http://www.firststeps.ru/vba/vbahelp/r.php?61
Номер ответа: 37
Автор ответа: V1RR
ICQ: 636580
Вопросов: 8
Ответов: 29
Web-сайт:
Профиль | | #37
Добавлено: 20.01.10 00:33
# Private Sub txtRun_KeyDown(KeyCode As Integer, Shift As Integer)
# If (KeyCode = vbKeyReturn) Then
# Dim p As Variant
# Dim RangeArray as Integer ' для размера массива, если Integer не хватит можно увеличить, хотя вряд ли
# Dim myErrorCode as Byte ' для выдачи номера ошибки
# p = Split(txtRun.Text, " "
# RangeArray = UBound(p) ' запоминаем размер массива, чтоб каждый раз при проверке массив не мучать
# Select Case p(0)
# Case "set"
# If RangeArray < 1 Then
# myErrorCode = 1
# Else
# Select Case p(1)
# Case "autorun"
# If RangeArray < 1 Then
# meErrorCode = 2
# Else
# MsgBox (p(2))
# End if
# Case "че-то_еще_с_set"
# 'выполняем на че-то еще
# 'если нужно p(2) то делаем проверку ***
# 'если сразу команда, то не делаем проверку ***
# End Select
# End If
# Case "еще_условие_для_первого_слова"
# 'могут быть сразу действия или еще Select
# 'здесь тоже может стоять проверка ***
# End Select
# End If
#
# If myErrorCode > 0 Then MsgBox "Команда " & p(0) & " написана не правильно!" & vbCrLf & "Должно быть как минимум " & myErrorCode & " слов(а)!"
# 'очистка пля по нажанию Enter
# If (KeyCode = vbKeyReturn) Then txtRun.Text = ""
# End Sub
Я старался придерживаться схемы что мне посоветовали на 1 странице данной темы, просто добавить еще команды.
Не пойму в чем ошибка вроде бы структура верная.
Номер ответа: 38
Автор ответа: Nickola
Вопросов: 2
Ответов: 12
Профиль | | #38
Добавлено: 20.01.10 12:20
Должно быть
Второй раз "Select Case" не надо. Это специальная конструкция, чтоб проверить одну переменную несколько раз на разные значения.
Номер ответа: 39
Автор ответа: V1RR
ICQ: 636580
Вопросов: 8
Ответов: 29
Web-сайт:
Профиль | | #39
Добавлено: 20.01.10 13:53
Ааа ясненько, спасибо
Буду делать, если че еще спрошу )
Номер ответа: 40
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #40
Добавлено: 20.01.10 14:24
Я представляю размер select case в программе хотя бы на 50 команд
Номер ответа: 41
Автор ответа: Nickola
Вопросов: 2
Ответов: 12
Профиль | | #41
Добавлено: 22.01.10 18:02
Я представляю размер select case в программе хотя бы на 50 команд
Согласен, что получается полный бред, но "CallByName" и 50 процедур тоже мне кажется не выход.
Номер ответа: 42
Автор ответа: Winand
Вопросов: 87
Ответов: 2795
Web-сайт:
Профиль | | #42
Добавлено: 22.01.10 18:33
Ну по крайней мере нужно просто добавлять процедуры с определенными именами, не изменяя селект кейсов. Можно как обsxyj сделать всё на модных скриптах))
Номер ответа: 43
Автор ответа: VβÐUηìt
Вопросов: 246
Ответов: 3333
Web-сайт:
Профиль | | #43
Добавлено: 24.01.10 21:40
ScriptControl!