Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 | 2 |

 

  Вопрос: Проверка корректности ввода данных Добавлено: 02.05.05 21:56  

Автор вопроса:  Артём | ICQ: 6330018 

Ответить

  Ответы Всего ответов: 25  

Номер ответа: 16
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #16 Добавлено: 04.05.05 23:46
Я проверял только с KeyPress, прекрасно работало.
Сейчас уже не хочется запускать VB Experss 2005, устал за день.

Без KeyUp и KeyDown кнопка Enter блокируется, имхо, больше ничего не надо.

Если все-таки будетшь делать с KeyDown, KeyUp, то там, кажется, нужно
анализировать e.KeyCode - пробуй сравнивать с Keys.Enter или Keys.Return,
точно не помню.

Ответить

Номер ответа: 17
Автор ответа:
 Артём



ICQ: 6330018 

Вопросов: 6
Ответов: 11
 Профиль | | #17 Добавлено: 04.05.05 23:49
ОКЕЙ большое спасибо всем кто помог!!! Низкий поклон, темка закрыта...

Ответить

Номер ответа: 18
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #18 Добавлено: 17.05.05 16:42
 mozno ispolzovat "regular expressions"

imports system text.RegularExpressions
......
    Private Function validate_regex(ByVal s As String)
        If s <> "" Then
            s = Regex.Replace(s, "\d", "";)
            Return s
        End If

    End Function

    Private Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        Dim s As String = TextBox1.Text
        TextBox1.Text = validate_regex(s)

    End Sub



[a-zA-Z] - vse bukvi
[a-zA-Z] - vse, krome bukv
\d - zifra 0 - 9
\D - vse, krome zifri



\s - probel
\b - backspase
\r - vozvrat caretki
\n - novaya stroka

Ответить

Номер ответа: 19
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #19 Добавлено: 17.05.05 16:51
Private Function validate_regex(ByVal s As String)

Я чего-то подзабыл, сейчас за такой код сразу расстреливают, или дают еще пожить немного???

Что он возвращает? Object??? А я думал, что должен по логике вернуть String...

PS Option Strict On рулит

Ответить

Номер ответа: 20
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #20 Добавлено: 19.05.05 16:35

imports system text.RegularExpressions
......
    Private Function validate_regex(ByVal s As String)
        If s <> "" Then
            s = Regex.Replace(s, "\d", "";)
            Return Cstr(s)
        End If

    End Function

    Private Sub TextBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
        Dim s As String = TextBox1.Text
        TextBox1.Text = validate_regex(s)

    End Sub

Ustraivaet?????????
Esli v vb.net scopiruesh cod, to rabotat budet i bez "Cstr()"

Ответить

Номер ответа: 21
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #21 Добавлено: 19.05.05 16:49

Private Function validate_regex(ByVal s As String)

Я чего-то подзабыл, сейчас за такой код сразу расстреливают, или дают еще пожить немного???

Что он возвращает? Object??? А я думал, что должен по логике вернуть String...

 "S" Obiavlena v funkzii kak STRING, poetomu i vozvraschaetsya kak string.
Kakie problemi???

Ответить

Номер ответа: 22
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #22 Добавлено: 19.05.05 19:28
Ustraivaet?????????
Esli v vb.net scopiruesh cod, to rabotat budet i bez "Cstr()"


Правда? А ты не знал, что в VB .NET есть такое понятие, как жесткая проверка типов? Если она включена (а большинства прогарммистов она всегда включена), то твой код просто напросто не скомпилируется.

Private Function validate_regex(ByVal s As String)
        If s <> "" Then
            s = Regex.Replace(s, "\d", "";)
            Return Cstr(s)
        End If

    End Function

Во-первых, это очень плохой стиль - использовать переданный в функцию параметр для хранения в нем промежуточных результатов.
Во-вторых, не указано, какой тип возвращает функция, т.е. она возвращает Object (если включить еще жусткую проверку типов, то это вообще будет одна большая синтаксическая ошибка, а не функция).
В-третьих (вытекает из 2-го) - при передаче твоя s будет упакована (хоть с Cstr, оть без него) - дополнительные затраты.

Вот такие, собственно, и проблемы.
Ничего криминального, но с человеком, который пишет такой код, я бы работать не стал.

Ответить

Номер ответа: 23
Автор ответа:
 BUMM ®



Вопросов: 8
Ответов: 482
 Профиль | | #23 Добавлено: 19.05.05 20:29
tebya nikto ne prosit so mnoy rabotat,
 a vot vezhlivoti u tebya mama s papoy tocno ne nauchili

Ответить

Номер ответа: 24
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #24 Добавлено: 19.05.05 23:46
tebya nikto ne prosit so mnoy rabotat,

А я и не предлагаю со мной работать.

a vot vezhlivoti u tebya mama s papoy tocno ne nauchili

Вежливости???
Конкретно, какое из слов, сказанное мною в этом топике оказалось невежливым?

Что касается остального, я только указал на недостатки кодирования, а что с этим делать дальше - это твое дело.
PS: Ничего личного, только Технологии.

Ответить

Номер ответа: 25
Автор ответа:
 ⊗WaX⊗



Вопросов: 26
Ответов: 325
 Web-сайт: sapfir.cift.ru
 Профиль | | #25
Добавлено: 22.05.05 13:40
2 BUMM
Рекомендую прислушиваться к полезным советам в какой бы форме они не звучали.

Сегодня тебя ткнули носом, а завтра ты ткнешь :)

Ответить

Страница: 1 | 2 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам