Аватар для Kris_Tulko
1 / 1 / 0
Регистрация: 02.09.2013
Сообщений: 108

TextBox: Backspace/ запрет на ввод нуля первым символом

20.05.2015, 14:21. Показов 5033. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Пожалуйста, подскажите.

Моя задача сделать так, чтобы в textBox можно было ввести только натуральное число. Я просто разрешила вводить лишь цифры, никаких запятых. Но надо ещё, чтобы нуль невозможно было поставить первым символом -тут начались проблемы.
Ещё хорошо бы сохранить возможность затирать текст Backspace-ом.
Вот такой код:
C++
1
2
3
4
5
6
7
private: System::Void textBox1_KeyPress(System::Object^  sender, System::Windows::Forms::KeyPressEventArgs^  e) {
             if ((e->KeyChar < 48 || e->KeyChar > 57||e->KeyChar ==8 )&&(textBox1->Text != "" || e->KeyChar!=48))   
             {
                 e->Handled = true; 
             }
 
         }
Что не так?

Добавлено через 28 минут
Предположение: нужно какое-то сообщение инициировать о том, что textBox заполнен, чтобы использовать выражение
C++
1
textBox1->Text != ""
???

Добавлено через 6 минут
Нашла тут тему про Backspace: https://www.cyberforum.ru/visu... 93475.html

Добавлено через 3 часа 55 минут
Не, та тема -"Как сделать BackSpace "- совершенно о другом. Он работает в текстбоксе.
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
20.05.2015, 14:21
Ответы с готовыми решениями:

Как запретить ввод нуля первым символом в TextBox?
Доброго времени суток, как запретить ввод нуля первым символом в TextBox?

Как в VBA в поле Textbox сделать запрет на ввод более одного слова (или запрет на ввод пробелов)?
Добрый день. Нужно, чтобы в поле TextBox можно было ввести не более одного слова (в противном случае выводится сообщение). Приведенный ниже...

Ввод в TextBox только цифр, минуса и обработка backspace
Как сделать чтобы в textBox можно было вводить только цифры и работал backspace и еще минус можно было вводить минус

1
Администратор
Эксперт .NET
 Аватар для tezaurismosis
9673 / 4825 / 763
Регистрация: 17.04.2012
Сообщений: 9,664
Записей в блоге: 14
20.05.2015, 17:28
Лучший ответ Сообщение было отмечено Kris_Tulko как решение

Решение

Проверил, глюков не нашёл, и вы посмотрите
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Void textBox1_KeyPress(Object^ sender, KeyPressEventArgs^ e) {
    if ((e->KeyChar < 48 || e->KeyChar > 57) && e->KeyChar != 8) {
        e->Handled = true;
        return;
    }
 
    String^ text = textBox1->Text;
    // запрет последовательного ввода после имеющегося нуля
    if (text == "0" && e->KeyChar != 8)
        e->Handled = true;
    // запрет на ввод нуля при перемещении курсора в начало
    if (e->KeyChar == 48 && textBox1->SelectionStart == 0 && text != "")
        e->Handled = true;
}
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
20.05.2015, 17:28
Помогаю со студенческими работами здесь

Ввод минуса только первым символом
Всем доброго времени суток. Подскажите как сделать чтобы минус вводился в textbox только первым символом. Google не помог:(

Запрет на ввод нуля в первой позиции
Здравствуйте. Сделал запрет на ввод нуля в Edit, но тогда не могу написать 10, 20 и тд... Как можно это исправить?

Как запретить ввод цифрого разделителя (decimalseparator) первым символом в поле edit (Delphi)?
имеется компонент TEdit, не пустой, фильтруется на ввод символов с помощью EditKeyPress, перед изменением получает фокус, как сделать,...

Обработать ввод нуля в textbox
Привет всем! Вопрос №1 - как сделать так, что бы при вводе в textbox 0 (нуля) выводилось сообщение &quot;на ноль делить нельзя&quot;? ...

Запрет на ввод цифр в TextBox
Как запретить ввод цифр в поле TextBox?? Заранее спасибо)


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

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

Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru