Перейти к содержанию
    

Как правильно с компонента TextBox получить число и сохратит в uINT

Нужно потом работать как с числом, и хотелось бы предварительно проверить число ли там или букву втулили, TextBox предварительно ограничил 3 знаками , чтоб не вписали число больше 999 ???

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Разве никто не знает как из строки получить число, которое потом можно записать в переменную типа unsigned int ???

 

ладно проехали

 

             unsigned int iNumber = Convert::ToInt32( IP_adr_LH->Text);
             richTextBox1->Text  += iNumber;
             richTextBox1->Text  += "\n";
             num1->Value = iNumber;

Изменено пользователем west329_

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, не знаю как в VS, а в билдере и делфях обычно было что-то типа .ToInt() или StrToInt()

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, не знаю как в VS, а в билдере и делфях обычно было что-то типа .ToInt() или StrToInt()

 

Это всё что мне удалось выдавить из msdn.microsoft.com

Был бы очень признателен если приведёте кусок кода по использованию их, ато мне моя реализация не сильно нравится как я понял она использует NET библиотики.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В VB преобразование делает функция Val(TextBox), а проверку на числовую природу текстовых данных - функция IsNumeric(TextBox). С VS не работал.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

мне моя реализация не сильно нравится как я понял она использует NET библиотики.

А это такая вот подлая особенность мелкософтовской студии. Даже если ваша программа вообще ничего не будет делать, она требует этот долбаный фреймворк.

Меня студия убила уже на стадии установки. Окончания я так и не дождался. Промучившись полдня, снёс нахрен и с тех пор обхожусь продукцией борланда (или как там они нынче называются)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Блин, люди, ну вы даете.

int number = atoi("строка");

Кстати, richTextBox1 это ведь из WinForms? Тогда не мучайтесь, Вы и так УЖЕ используете .Net :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Неплохо еще при переводе из строки в число пользовать

try-catch, чтобы прога не вылетала, если введено не число а символы или пустая строка.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А это такая вот подлая особенность мелкософтовской студии. Даже если ваша программа вообще ничего не будет делать, она требует этот долбаный фреймворк.

А это уже, извините, зависит исключительно от прямолинейности рук программиста.

Меня студия убила уже на стадии установки. Окончания я так и не дождался.

И на основании этого Вы делаете вывод о функциональных возможностях продукта? Ну-ну.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

IsNumeric(TextBox) такой функции нет с С++, можно чемто другим потестить стороку на предмет наличия мусора ?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

И на основании этого Вы делаете вывод о функциональных возможностях продукта? Ну-ну.

Да нет, просто мне иногда (раз в несколько месяцев) нужно накидать простейшую форму, которая общается с СОМ-портом. На билдере я это могу сделать очень быстро и получить на выходе ехе-шник в 500 кБ, который работает совершенно автономно. Причём, для этого достаточно и 5-го билдера, и 3-го.

 

Не хотелось бы начинать очередную религиозную войну.

Просто, каждому своё. Я себя, в общем-то, к программерам и не отношу.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Не хотелось бы начинать очередную религиозную войну.

Аналогично :)

На билдере я это могу сделать очень быстро и получить на выходе ехе-шник в 500 кБ

Если не забудите сказать билдеру использовать статические библиотеки :)

Просто, IMHO, студия намного более подходящий инструмент для создания "тяжелых" программных продуктов. Сужу по личному опыту. А по быстрячку набросать программку для общения с девайсом по СОМ-у, это пожалуйста, сам билдером не брезгую :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну, к примеру, используйте richTextBox1_KeyDown(), и разрешайте там только цифры...

 

И если уж начали на .NET ваять, то хотябы основы почитайте, чтобы понять концепцию зачем оно все такое типизированное и совершенно не Си'шное.

 

А вообще преобразование у вас верно сделано, только вот try{} catch(){} надо, чтобы появление "мусора" в строке как раз и выловить...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

...И если уж начали на .NET ваять...
Автор, по-моему, это еще не осознал...

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...