Модераторы: Poseidon, Snowy, bems, MetalFan

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> проверка заполнения edit'ов, каким образом? 
V
    Опции темы
WERITAS
Дата 29.4.2006, 14:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


********
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 2.5.2005
Где: Москва

Репутация: нет
Всего: 5



Есть форма, а на ней три Edit'а, в которые вводятся данные float'овского типа. Каким образом осуществить проверку, что все ли поля заполнены?
 


--------------------
Арт-менеджер клуба, разрешивший концерт Алексея Глызина, уволен с формулировкой "Мудак"
PM MAIL   Вверх
Albinos_x
Дата 29.4.2006, 15:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



Код

...
if Edit1.text<>'' then
...
 


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
WERITAS
Дата 29.4.2006, 16:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


********
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 2.5.2005
Где: Москва

Репутация: нет
Всего: 5



Я так пробовал, компилятор выдает ошибку Operator not applicable to this operand type

Я делал так:
Код

if (Form2.Edit1.Text <> ' ' AND Form2.Edit2.Text <> ' ' AND Form2.Edit3.Text <> ' ') then 
 


--------------------
Арт-менеджер клуба, разрешивший концерт Алексея Глызина, уволен с формулировкой "Мудак"
PM MAIL   Вверх
Albinos_x
Дата 29.4.2006, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



Код

if ((Form2.Edit1.Text<>'') AND (Form2.Edit2.Text<>'') AND (Form2.Edit3.Text<>'')) then 
  

Это сообщение отредактировал(а) Albinos_x - 29.4.2006, 17:08


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Sunvas
Дата 29.4.2006, 18:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Как вариант, если эдитов будет уж слишком много:  smile 
Код

var i:word;
begin
for i:=0 to form1.ComponentCount-1 do
if (form1.Components[i] is tedit) then if (form1.Components[i] as tedit).Text='' then
begin
showmessage('Не все поля!');
exit;
end;
 


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
WERITAS
Дата 29.4.2006, 20:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


********
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 2.5.2005
Где: Москва

Репутация: нет
Всего: 5



Albinos_x 
Ваш вариант я также прорабатывал - та же ошибка.

Sunvas
Спасибо, помогло 


--------------------
Арт-менеджер клуба, разрешивший концерт Алексея Глызина, уволен с формулировкой "Мудак"
PM MAIL   Вверх
Sunvas
Дата 30.4.2006, 00:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(WERITAS @  29.4.2006,  20:30 Найти цитируемый пост)
Albinos_x 
Ваш вариант я также прорабатывал - та же ошибка.


В коде

Цитата(Albinos_x @  29.4.2006,  17:04 Найти цитируемый пост)
if ((Form2.Edit1.Text<>'') AND (Form2.Edit2.Text<>'') AND (Form2.Edit3.Text<>'')) then 

всего лишь нужно поубирать "form2." и все сработает!


Цитата(WERITAS @  29.4.2006,  20:30 Найти цитируемый пост)
Sunvas, 
Спасибо, помогло 

Я старался.
 


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Albinos_x
Дата 30.4.2006, 07:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



Цитата(WERITAS @  29.4.2006,  20:30 Найти цитируемый пост)
Ваш вариант я также прорабатывал - та же ошибка.

значит не првильно пробовали... у меня всё работает...
Цитата(Sunvas @  30.4.2006,  00:11 Найти цитируемый пост)
всего лишь нужно поубирать "form2." и все сработает!

form2. здесь не причём.... 


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
WERITAS
Дата 30.4.2006, 07:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


********
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 2.5.2005
Где: Москва

Репутация: нет
Всего: 5



Код
всего лишь нужно поубирать "form2." и все сработает!

Дык низзя form2 убирать! Я этот код пишу в обработчике, который вообще к form1 относится. 
 


--------------------
Арт-менеджер клуба, разрешивший концерт Алексея Глызина, уволен с формулировкой "Мудак"
PM MAIL   Вверх
Sunvas
Дата 1.5.2006, 01:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(Albinos_x @  30.4.2006,  07:12 Найти цитируемый пост)
значит не првильно пробовали... у меня всё работает...

А ты свое приложение компилил или WERITAS-а? Ведь разница-то возможна! 


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Albinos_x
Дата 1.5.2006, 08:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



разница в том, что компилятор без скобок считает 
Код

... ' ' AND Form2.Edit2.Text ...

за одну операцию, расставление скобок решает эти проблемы...
всё компилится без проблем... 


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
WERITAS
Дата 1.5.2006, 09:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


********
**


Профиль
Группа: Участник
Сообщений: 582
Регистрация: 2.5.2005
Где: Москва

Репутация: нет
Всего: 5



Albinos_x

Вот теперь скомпилилось (когда вы отредактировали свое сообщение). но это уже не столь важно. Вопрос закрыт. Всем спасибо за помощь! smile 

 


--------------------
Арт-менеджер клуба, разрешивший концерт Алексея Глызина, уволен с формулировкой "Мудак"
PM MAIL   Вверх
Albinos_x
Дата 1.5.2006, 09:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Evil Skynet
****


Профиль
Группа: Комодератор
Сообщений: 3288
Регистрация: 28.5.2004
Где: X-6120400 Y-1 4624650

Репутация: 26
Всего: 108



Цитата(WERITAS @  1.5.2006,  09:08 Найти цитируемый пост)
Вот теперь скомпилилось (когда вы отредактировали свое сообщение)

хех... я всего лишь сделал из пробела, который у Вас стоял изначально:
' ' 
пустое значение 
''
она на компиляцию не влияет... влияет только на результат... т.е. при пустой строке, он бы ничего не выдал бы....
 smile  smile  smile 
и отредактировал я почти сразу же:
Цитата(время поста)
29.4.2006, 17:04

Цитата(время редактирования)
29.4.2006, 17:08

через 4 минуты, т.к. трафик сильно тормозил...
так, что ошибка была не в этом
 smile  


--------------------
"Кто владеет информацией, тот владеет миром"    
Уинстон Черчилль
PM MAIL ICQ   Вверх
Scolopendra
Дата 5.5.2006, 13:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 5.5.2006

Репутация: нет
Всего: нет



По моему if Edit1.Text='' может привеcти к ошибке, если вы например ввели пробел в ваш Edit. Он уже <>'' , а на самом деле ничего не введено. Я обычно делаю так: if Length(Trim(Edit1.Text))=0 then ... 
PM MAIL   Вверх
Sunvas
Дата 6.5.2006, 07:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Соль и сахар
****


Профиль
Группа: Участник
Сообщений: 3388
Регистрация: 12.3.2006
Где: Тосно

Репутация: 28
Всего: 89



Цитата(Scolopendra @  5.5.2006,  13:07 Найти цитируемый пост)
По моему if Edit1.Text='' может привеcти к ошибке, если вы например ввели пробел в ваш Edit. Он уже <>'' , а на самом деле ничего не введено. Я обычно делаю так: if Length(Trim(Edit1.Text))=0 then ... 

Ну если пробел, это для тебя ничего.. А если пользователь поставит точку, прочерк, знак восклицания ведь это тоже не будет нести смысловой нагрузки! Тут уж нужно заняться фильтрацией ввода, а не проверкой на заполненность эдитов. 


--------------------
Воспитывая детей по своему образу и подобию, родители почему-то надеются, что они будут лучше их.
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1235 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.