C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
TEditBox
MOPO3
Отправлено: 10.05.2004, 14:11


Ученик-кочегар

Группа: Участник
Сообщений: 22



В Визуал цпп есть элемент формы типа IP adress.
Есть ли аналог для борланд билдера ?
full_lamer
Отправлено: 10.05.2004, 19:17


Машинист паровоза

Группа: Участник
Сообщений: 225



Есть компонент TMaskEdit (в BCB он на закладке Additional 3тий слева), у него есть свойство EditMask, в нем ты можешь делать что хош, хоть IP хоть MAC адрес... wink.gif
MOPO3
Отправлено: 11.05.2004, 07:28


Ученик-кочегар

Группа: Участник
Сообщений: 22



Возможно ли привести пример маски ? А то у меня не выходит sad.gif Прога вылетает по экскпшену sad.gif
full_lamer
Отправлено: 11.05.2004, 08:04


Машинист паровоза

Группа: Участник
Сообщений: 225



Маска может быть такой: 999.999.999.999;1;
Только нужно перехватить OnChange и проверять превышение 255... для каждого числа...
MOPO3
Отправлено: 11.05.2004, 08:34


Ученик-кочегар

Группа: Участник
Сообщений: 22



Ок, с этим разобрался, спасибо.
Другой вопрос : если ввести что то типа 192.168.92.30 то остаются пробелы в стринге MaskEdit->Text, как от них избавиться ?
Маску использую такую : 099\.099\.099\.099;1;
Admin
Отправлено: 11.05.2004, 08:50


Владимир

Группа: Администратор
Сообщений: 1190



Можно проверять на пробелы в строке и все их,
если найдутся, удалить из строки.

CODE

  MaskEdit1->Text = "192.168.  0. 30";
AnsiString s = MaskEdit1->Text;
while(int n = s.Pos(" ")) s.Delete(n,1);
ShowMessage(s);


Отредактировано Admin — 11/05/2004, 09:55
MOPO3
Отправлено: 11.05.2004, 09:52


Ученик-кочегар

Группа: Участник
Сообщений: 22



QUOTE (Admin @ 11/05/2004, 08:52)
Можно проверять на пробелы в строке и все их,
если найдутся, удалить из строки.

CODE

MaskEdit1->Text = "192.168. 0. 30";
AnsiString s = MaskEdit1->Text;
while(int n = s.Pos(" ")) s.Delete(n,1);
ShowMessage(s);

Благодарю, всё получилось biggrin.gif

Вернуться в Вопросы программирования в C++Builder