Как я могу проверить формат времени, введенный в текстовое поле? - PullRequest
0 голосов
/ 22 декабря 2010

Я использую VB 6, и моя форма имеет TextBox элемент управления. Я хочу, чтобы пользователь мог вводить время в текстовом поле, но мне нужно проверить, правильно ли введено время.

Пример:

Textbox1.Text = 236161  '(User Input)

236161 = HHMMSS

Введенное выше время неверно, поскольку минуты и секунды больше 60.

Какой код можно использовать для проверки формата времени, введенного в текстовом поле?

Ответы [ 3 ]

0 голосов
/ 22 декабря 2010

Я предлагаю вместо этого использовать элемент управления DTPicker. Это средство выбора даты / времени, которое доступно для приложений VB 6, и оно по сути заставляет пользователя (но гораздо мягче, чем этозвучит), чтобы ввести правильное время в правильном формате.Попытка выполнить эту проверку самостоятельно - гигантская боль в тылу, и она не стоит усилий, поскольку использование встроенного элемента управления делает ее намного проще.

Вы можете начать использовать это в своем проекте, выполнив следующие действия.:

  1. В VB 6 IDE откройте меню «Проект» и нажмите «Компоненты» (или нажмите Ctrl + T ).

  2. Прокрутите вниз почти до конца списка и выберите «Общие элементы управления Microsoft Windows-2» (желательно версию 6.0, если доступна, а не версию 5.0).

  3. Как только вы нажмете ОК, вы найдете несколько новых элементов управления, добавленных к вашей панели инструментов.Найдите и нажмите на тот, который называется DTPicker.Это будет выглядеть примерно так:

    DTPicker control in VB 6 toolbox

  4. Перетащите элемент управления DTPicker на свою форму.

  5. Убедитесь, что выбранный элемент управления выбран, затем в окне «Свойства» прокрутите вниз до свойства «Формат» и установите для него значение «2 - dtpTime».Это указывает, что вы хотите принять значение времени в элементе управления DTPicker, а не дату.

0 голосов
/ 22 декабря 2010

На самом деле, вы можете использовать функцию форматирования следующим образом:

TestStr = Format(TestDateTime, "HH:mm:ss")
0 голосов
/ 22 декабря 2010

С .Net у вас есть регулярное выражение. С VB 6 вы должны использовать библиотеки COM или ActiveX и добавлять их в качестве ссылок на ваш проект (http://www.regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5 или http://support.microsoft.com/kb/818802)

Образцы регулярных выражений для проверки времени см .: http://www.regexlib.com/DisplayPatterns.aspx?cattabindex=4&categoryId=5

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...