Форум программистов, компьютерный форум, киберфорум
Наши страницы
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/20: Рейтинг темы: голосов - 20, средняя оценка - 4.75
Dim1One
41 / 41 / 4
Регистрация: 30.04.2011
Сообщений: 276
1

Как остледить нажатие кнопки "Отмена" в InputBox'е

22.07.2011, 11:52. Просмотров 3663. Ответов 5
Метки нет (Все метки)

vb.net
1
Dim IB As String = InputBox("Для входа в программу введите свое имя и пароль через пробел.", "Вход в программу")
Как определить, что пользователь нажал на кнопку "Отмена", т.е сделать свое действие при нажатии на эту кнопку?
Попробовал так, но не получается:
vb.net
1
If IB = DialogResult.Cancel Then Close()
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.07.2011, 11:52
Ответы с готовыми решениями:

Как вызвать MessageBox с кнопками "Да" - "Нет" и обработать их нажатие
Срочно нужна помощ. Задача 1 создать програму перевда температур йз...

Эмулировать нажатие кнопки "Сохранить" в WebBrowser
Всем привет.. сделал простенький вход на сайт вконтакте .. на нажатие кнопки...

Недоступны кнопки "Add new" и "Delete" в BindingSource
Недоступны кнопки "Add new" и "Delete" в BindingSource. Что делать?

Как исправить ошибку "Приведение строки "" к типу "Double" является недопустимым"?
Выдает ошибку в строке nasel(n).mat = Int(line(2)). Приведение строки "" к типу...

Обработка "null" в MS Access "Приведение типа "|DBNull" к типу "String" является недопустимым"
Здравствуйте. Работаю с базой MS Access Вывожу в DataGridView таблицу...

5
gitarillo
728 / 528 / 45
Регистрация: 17.06.2010
Сообщений: 1,027
Записей в блоге: 1
22.07.2011, 12:11 2
Dim1One, Точно знаю, что в VB6 можно было ловить указатель на введеную строку. И если пользователь нажимал отмена, то он становился равным нулю. Функция, которая возвращает указатель в VB6 -
Visual Basic
1
strptr
.
выглядело это так
Visual Basic
1
2
3
Dim s As String
s = InputBox("Строка")
If StrPtr(s) <> 0 Then MsgBox "не отмена" Else MsgBox "отмена"
Как это сделать здесь честно говоря я не знаю. Мелкомягкие говорят что Inputbox нужно использовать только для отладки приложений.
Выход курить как вернуть указатель на строку Inputbox. Или создать формочку такую же и вызывать когда надо.
0
Desh
143 / 143 / 41
Регистрация: 01.12.2009
Сообщений: 271
22.07.2011, 13:37 3
vb.net
1
2
3
4
5
6
7
8
9
 
Dim IB As String = InputBox("Для входа в программу введите свое имя и пароль через пробел.", "Вход в программу")
 
        if IB = "" Then
            Exit Sub
            'или Me.close()
        Else
            Form2.Show()
        End If
думаю так...

P.S. В инпут боксе если нажата отмена или крестик, то инпут бокс возвращает пустую строку
1
gitarillo
728 / 528 / 45
Регистрация: 17.06.2010
Сообщений: 1,027
Записей в блоге: 1
22.07.2011, 13:56 4
Цитата Сообщение от Desh Посмотреть сообщение
P.S. В инпут боксе если нажата отмена или крестик, то инпут бокс возвращает пустую строку
Это верно. Но бывают случаи, когда пустота тоже на что-то влияет. И если пользователь именно отказался от ввода или оставил поле без изменений это разные вещи. Хорошо бы конечно различать эти понятия.
1
Desh
143 / 143 / 41
Регистрация: 01.12.2009
Сообщений: 271
22.07.2011, 14:21 5
Цитата Сообщение от gitarillo Посмотреть сообщение
Но бывают случаи, когда пустота тоже на что-то влияет.
тогда
Цитата Сообщение от gitarillo Посмотреть сообщение
создать формочку такую же и вызывать когда надо
0
Памирыч
Почетный модератор
20873 / 8757 / 1080
Регистрация: 11.04.2010
Сообщений: 11,013
22.07.2011, 15:19 6
Dim1One, Инпутбокс - примитив. Используется от острой необходимости хоть как-то поддержать диалог с пользователем.
Оправдывает свое существование пожалуй только в студенческих дребенделках и приложениях, у которых нет интерфейса (например, vbs)


Цитата Сообщение от gitarillo Посмотреть сообщение
Но бывают случаи, когда пустота тоже на что-то влияет. И если пользователь именно отказался от ввода или оставил поле без изменений это разные вещи
Верно.
Пример у меня живой - я сделал программку, в которую надо ввести пароль.

Юзер после 3 неверных попыток отказывается от затеи и начинает бедный уже жать и Отмену, и на крестик, а она ему хоть до куда: Неверный пароль.

Рассуждая логически, это должно работать по аналогии с диалогами для сохранения/открытия файлов, но как видим - в отмене пользы не много.
0
22.07.2011, 15:19
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.07.2011, 15:19

Поиск в DGW вылетает с ошибкой "Приведение типа "|DBNull" к типу "String" является недопустимым."
В общем такой вопрос. Код рабочий. Только у меня не работает. For i = 0...

Ошибка "Приведение строки "explorer.exe" к типу "Double" является недопустимым" при записи в реестр
Помогите, хочу получить доступ к winlogon, что бы изменять любое другое...

Как исправить ошибку: "MsoShapeType" в пространстве имен "Microsoft.Office.Core" является неоднозначным.
Перевожу код программы из VBA worda на VB 2010 вот код (из темы в разделе VBA...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru