С Новым годом! Форум программистов, компьютерный форум, киберфорум
C++/CLI Windows Forms
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 12.09.2024
Сообщений: 2
1

TextBox: проверка символа на принадлежность к цифрам ИЛИ отключение ПКМ-контекстного меню TextBox'a

12.09.2024, 16:36. Показов 308. Ответов 1

Author24 — интернет-сервис помощи студентам
Здравствуйте, обращаюсь с вопросом по поводу элемента TextBox в CLR Windows Forms. NET Framework на C++
В проекте присутствует поле f1_tba для ввода текста, в которое можно вводить только цифры, запятую (только один раз), точку (автоматически заменяется на запятую, тоже только один раз) и тире (только один раз). Однако эти запреты распространяются только на ввод текста с клавиатуры, но не из буфера обмена. Поэтому:

1) Как можно убрать всплывающее при нажатии ПКМ контекстное меню с кнопкой "Вставить" (комбинация Ctrl + V уже нейтрализована)?

ИЛИ

2) Как проверить каждый символ содержимого TextBox'а на принадлежность к категории цифр, запятой или тире?
Сделал перебирание символов через цикл while, но не знаю, как проверить рассматриваемый символ на принадлежность к цифрам, т. к. переменная, в которой он хранится, имеет тип "System::String ^" (умею "выуживать" символы текста только в этот формат):

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
int l_a = f1_tba->Text->Length; // Длина строки в TextBox'е
String^ currchar_a;
currchar_a = "";
 // Перебираем символы строки TextBox'а один за другим
    int p = 0;
    while (p < l_a)
    {
        currchar_a = f1_tba->Text->Substring(p, 1);
        if () // Тут нужно условие на проверку того, является ли символ в currchar_a цифрой, тире или запятой
       {
              MessageBox::Show("Поле параметра A заполнено некорректно.", "Ошибка построения графика!"); // Если не является, то вылезает окно с ошибкой
              return;
        }
        else p = p + 1; // Если является, то переходим к следующему символу
    }
Заранее спасибо за ответ!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.09.2024, 16:36
Ответы с готовыми решениями:

Баг контекстного меню (на ПКМ)
Недавно поигрался с темами в Windows 11, установил UXThemePatch, установил новые системные иконки...

Решение: Долгая реакция на ПКМ (вызов контекстного меню).
Здравствуйте! Долго вызывается контекстное меню в тех местах где оно вылазит с пунктами контроля...

Как удалить элемент контекстного меню с пкм кнопки?
Скриншот ниже, это меню, его можно модифицировать (перетасовать или удалить кнопки)?

Добавление контекстного меню по клику пкм на элемент listwidget
Всем Привет! Такой вопрос, как правильно добавить контекстное меню с разделами &quot;Подключить&quot;,...

1
Странный типчик
44 / 8 / 2
Регистрация: 29.01.2020
Сообщений: 50
18.09.2024, 20:42 2
Здравствуйте, отвечаю на ваш вопрос
1) Для отключения контекстного меню при нажатии ПКМ можно использовать свойство TextBox ShortcutsEnabled = false
2) Можно создать обработчик события нажатия на клавишу (это просто пример, позволяет вводить только цифры, дальше можете сами добавить необходимый функционал)
C++
1
2
3
4
5
6
private: System::Void textbox1_KeyPress(System::Object^ sender, System::Windows::Forms::KeyPressEventArgs^ e) {
    if (!Char::IsDigit(e->KeyChar) && !Char::IsControl(e->KeyChar))
    {
        e->Handled = true;
    }
}
0
18.09.2024, 20:42
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
18.09.2024, 20:42
Помогаю со студенческими работами здесь

Ворд как погасить появление контекстного меню по нажатию ПКМ
Здравствуйте, код: Private Sub App_WindowBeforeRightClick(ByVal Sel As Selection, Cancel As...

Отключение контекстного меню
Здравствуйте ! Можно ли отключить контекстное меню из HTML ? &lt;div oncontextmenu=&quot;myFunc()&quot;&gt;

Отобразить выделенный текст в TextBox как один из пунктов меню по ПКМ
Добрый день! Подскажите, пожалуйста, по следующему вопросу. Есть textbox, в нем пользователь...

Проверка символа на принадлежность множеству
как правильно сделать проверку символа на принадлежность множеству А и как правильно написать...

Проверка введенного символа на принадлежность множеству
Данное множество А. Составить программу, которая бы при вводе произвольного символа выводила на...

Назначение одного контекстного меню для нескольких контроллов (textBox)
Как обычно сабж, +: Столкнулся с проблемой. Назначил одно контекстное меню для 20ти...

Как управлять активностью пунктов своего контекстного меню TextBox?
Всем здравствуйте. Пытаюсь заменить встроенное контекстное меню TextBox на своё, включающее в том...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Это работает. Скорость асинхронной логики велика. Вопрос видимо останется в стабильности. Плата - огонь!
Hrethgir 13.01.2025
По прошлому проекту в Logisim Evolution прилагаю файл архива проекта Gowin Eda и снимок. Восьмибитный счётчик из сумматора+ генератор сигнала согласования+ стартер fast регистров. Файлы прилагаю. . . .
UserScript для подсветки кнопок языков программировани­­­­я в зависимости от текущего раздела
volvo 13.01.2025
В результате работы этого скрипта подсвечиваются нужные кнопки не только в форме быстрого ответа, но и при редактировании сообщения: / / ==UserScript== / / @name CF_DefaultLangSelect / / . . .
Введение в модели и алгоритмы машинного обучения
InfoMaster 12.01.2025
Машинное обучение представляет собой одну из наиболее динамично развивающихся областей искусственного интеллекта, которая фокусируется на разработке алгоритмов и методов, позволяющих компьютерам. . .
Как на Python создать нейросеть для решения задач
InfoMaster 12.01.2025
В контексте стремительного развития современных технологий особое внимание уделяется таким инструментам, как нейросети. Эти структуры, вдохновленные биологическими нейронными сетями, используются для. . .
Как создать нейросеть для генерации картинок на Python
InfoMaster 12.01.2025
Генерация изображений с помощью искусственных нейронных сетей стала одним из наиболее захватывающих направлений в области компьютерного зрения и машинного обучения. В этой статье мы рассмотрим. . .
Создание нейросети для генерации текста на Python
InfoMaster 12.01.2025
Нейросети, или искусственные нейронные сети, представляют собой модели машинного обучения, вдохновленные работой человеческого мозга. Они состоят из множества взаимосвязанных узлов, или "нейронов",. . .
Как создать нейросеть распознавания изображений на Python
InfoMaster 12.01.2025
Введение в распознавание изображений с помощью нейросетей Распознавание изображений с помощью нейронных сетей стало одним из самых впечатляющих достижений в области искусственного интеллекта. Эта. . .
Основы искуственного интеллекта
InfoMaster 12.01.2025
Искусственный интеллект (ИИ) представляет собой одну из наиболее динамично развивающихся областей современной науки и технологий. В широком смысле под искусственным интеллектом понимается способность. . .
Python и нейросети
InfoMaster 12.01.2025
Искусственные нейронные сети стали неотъемлемой частью современных технологий, революционизировав множество областей - от медицинской диагностики до автономных транспортных средств. Python, благодаря. . .
Python в машинном обучении
InfoMaster 12.01.2025
Python стал неотъемлемой частью современного машинного обучения, завоевав позицию ведущего языка программирования в этой области. Его популярность обусловлена несколькими ключевыми факторами, которые. . .
Создание UI на Python с TKinter
InfoMaster 12.01.2025
TKinter — это одна из наиболее популярных библиотек для создания графических интерфейсов пользователей (GUI) в языке программирования Python. TKinter входит в стандартную библиотеку Python, что. . .
HTML5 в разработке мобильных приложений
InfoMaster 12.01.2025
Введение: Обзор роли HTML5 в мобильной разработке В современном мире мобильных технологий HTML5 стал ключевым инструментом для разработки кроссплатформенных приложений. Эта технология произвела. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru