Форум программистов, компьютерный форум, киберфорум
C++ Builder
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.93/14: Рейтинг темы: голосов - 14, средняя оценка - 4.93
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,064
1

Edit1 text разрешено только цыфры

21.04.2011, 14:59. Показов 2857. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день всем. Извините за вопрос из первого класса,
Как запретить ввод в Edit1 все символы кроме цифр от 0 до 9 и не более восьми цифр вряд (типа пароль только из цифр от 0 до 9 и не более восьми символов)?
Спасибо!
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.04.2011, 14:59
Ответы с готовыми решениями:

Edit1->Text
//--------------------------------------------------------------------------- #include <vcl.h>...

присваивание char значения из Edit1->Text
Дана строка (массив символов) типа char: char str Необходимо этой самой строке присвоить значения...

C++ Builder 6 запись значения из Edit1->text в переменную типа wchar_t
Вот кусок кода, где объявлен класс, и экземпляром класса является массив. У класса есть переменная,...

RAD Studio. Компоненту Edit1.text передать значение из string
Пробую присвоить переменную string компоненту Edit1.text, но не получается, ошибка( В чем трабл?...

14
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
21.04.2011, 15:15 2
Цитата Сообщение от Samrisbe Посмотреть сообщение
не более восьми цифр вряд
C++
1
Edit1->MaxLength = 8;
1
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,064
21.04.2011, 15:18  [ТС] 3
Цитата Сообщение от Sasha Посмотреть сообщение
C++
1
Edit1->MaxLenght = 8;
Спасибо я вспомнил другой способ, в инспекторе объектов есть такая функция MaxLength.
Про запрет ввода букв и знаков нет вариантов?
0
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
21.04.2011, 15:28 4
Цитата Сообщение от Samrisbe Посмотреть сообщение
Про запрет ввода букв и знаков нет вариантов?
есть

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
void __fastcall TFindInvent_Number::Edit1KeyPress(TObject *Sender,
      char &Key)
{
Set < char, 0, 255 > Dig;
 if ( ! (Dig << '0' <<'1' << '2' << '3' <<'4' << '5'
             << '6' << '7'<< '8' << '9'<<'\b'<<'\r').Contains(Key))
 
 if ( ! Dig.Contains(Key))
    {
      Application->MessageBox("В это поле, необходимо вводить только цифры!!!!!!","Внимание",MB_ICONWARNING);
      Key = 0;
    }
 
 
}
Добавлено через 3 минуты
Цитата Сообщение от Samrisbe Посмотреть сообщение
Спасибо я вспомнил другой способ, в инспекторе объектов есть такая функция MaxLength.
Это свойство, а не функция. Я тебе с этим свойством код написал.
1
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,064
21.04.2011, 15:35  [ТС] 5
У меня как всегда проблема....
[C++ Error] Unit1.cpp(474): E2090 Qualifier 'TFindInvent_Number' is not a class or namespace name
[C++ Error] Unit1.cpp(474): E2040 Declaration terminated incorrectly
0
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
21.04.2011, 15:39 6
Вместо этого
C++
1
2
void __fastcall TFindInvent_Number::Edit1KeyPress(TObject *Sender,
      char &Key)
напиши
C++
1
2
void __fastcall TForm1::Edit1KeyPress(TObject *Sender,
      char &Key)
1
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,064
21.04.2011, 15:45  [ТС] 7
[C++ Error] Unit1.cpp(477): E2316 '_fastcall TForm1::Edit1KeyPress(TObject *,char &)' is not a member of 'TForm1'
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'Â' (0xc2)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ý' (0xfd)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ò' (0xf2)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'î' (0xee)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ï' (0xef)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'î' (0xee)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ë' (0xeb)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'å' (0xe5)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'í' (0xed)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'å' (0xe5)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'î' (0xee)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'á' (0xe1)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'õ' (0xf5)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'î' (0xee)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ä' (0xe4)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'è' (0xe8)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ì' (0xec)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'î' (0xee)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'â' (0xe2)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'â' (0xe2)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'î' (0xee)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ä' (0xe4)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'è' (0xe8)
[C++ Error] Unit1.cpp(484): E2206 Illegal character 'ò' (0xf2)
[C++ Error] Unit1.cpp(484): E2228 Too many error or warning messages

Может просто объявление в public или privat недо дописать?
0
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
21.04.2011, 15:52 8
Добавлено через 3 минуты
Цитата Сообщение от Samrisbe Посмотреть сообщение
Может просто объявление в public или privat недо дописать?
Конечно не надо...

Вообщем выделяешь твой эдит на форме.Заходишь в инспектор объектов на вкладку Event, там ищеш событие OnKeyPress, два раза клацаешь на нём попадаешь в редактор кода и вставляешь мой код.
1
1066 / 583 / 87
Регистрация: 03.12.2009
Сообщений: 1,255
21.04.2011, 16:00 9
Генерируешь обработчик событий onKeyPress для Edit1, и вставляешь туда код

if (((Key<'0') ||(Key>'9')) && (Key!=VK_BACK))
{
Key=0;
}


В итоге должно получиться

void __fastcall TForm1::Edit1KeyPress(TObject *Sender, wchar_t &Key)
{
if (((Key<'0') ||(Key>'9')) && (Key!=VK_BACK) && (Key!=','))
{
Key=0;
}
}
1
1365 / 732 / 67
Регистрация: 28.01.2011
Сообщений: 2,064
21.04.2011, 16:06  [ТС] 10
Спасибо Саша, все работает.
У меня еще один вопрос не потеме, но он не стоит чтоб изза него тему открывать...

Вот так использую ини файл...
Записываем в ини:
Ini->WriteBool("CheckBoxs","CheckBox1",CheckBox1->State);

Читаем с ини:
CheckBox1->State = Ini->ReadBool("CheckBoxs","CheckBox1","Def");

Вот такое выдает предупреждение...
[C++ Warning] Unit1.cpp(204): W8018 Assigning bool to TCheckBoxState

Может для CheckBox1 другой способ работы с ини есть?
0
LK
Заблокирован
21.04.2011, 16:14 11
bool - это true / false , или 0 / 1 , а никакой не CheckBox1->State
C++
1
CheckBox->Checked = true; // false
и выглядеть оно оно должно как-то так:
C++
1
Ini->WriteBool("CheckBoxs","CheckBox1",1); // true
если по-гламурному.
1
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
21.04.2011, 16:39 12
Цитата Сообщение от Samrisbe Посмотреть сообщение
[C++ Warning] Unit1.cpp(204): W8018 Assigning bool to TCheckBoxState
У меня тоже такое выскакивает, но я этому предупреждению не довал особого значения
1
103 / 74 / 10
Регистрация: 29.05.2010
Сообщений: 192
22.04.2011, 09:31 13
Код
enum TCheckBoxState { cbUnchecked, cbChecked, cbGrayed };
а вовсе никакой не bool
0
1497 / 1238 / 245
Регистрация: 04.04.2011
Сообщений: 4,363
22.04.2011, 10:58 14
enum TCheckBoxState {cbUnchecked, cbChecked, cbGrayed};
__property TCheckBoxState State = {read=FState, write=SetState, default=cbUnchecked};

Присвоение этому свойства значения bool может привести (и с высокой вероятностью приведет) в неожиданному результату. О чем компиллятор "толсто" намекает

Добавлено через 4 минуты
При использовании в настройках чекбоксов используйте вместо State св-во Checked, с которым корректно работать как с булевым.
0
LK
Заблокирован
22.04.2011, 15:26 15
Цитата Сообщение от MsGuns Посмотреть сообщение
При использовании в настройках чекбоксов используйте вместо State св-во Checked, с которым корректно работать как с булевым.
а я о чем говорил три дня тому назад ?
0
22.04.2011, 15:26
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.04.2011, 15:26
Помогаю со студенческими работами здесь

Edit1 только char , edit 2 только цифры
Здравствуйте. Видимо не умею использовать поиск. Прошу помощи. У меня есть два edit , при нажатии...

Switch, зависящий не только от Edit1 но и от Edit2
Помогите с кодом что switch зависел не только от Edit1 но и от Edit2, void __fastcall...

Edit1->Text.UpperCase();
Проблема с регистром русских букв. Суть в том, что когда я ввожу текст на английском языке(не...

Как сделать, чтобы из НД-считалось поле пол в edit1.Text и edit2.Text количество полов?
Здравствуйте, как мне сделать что бы из НД-считала поле пол в edit1.text и edit2.text количество...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru