Форум программистов, компьютерный форум, киберфорум
Наши страницы

Delphi для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.75
Helene Rolles
0 / 0 / 0
Регистрация: 27.06.2011
Сообщений: 10
#1

Строки.Вывод даты и сообщения о корректности. - Delphi

27.06.2011, 11:51. Просмотров 1630. Ответов 6
Метки нет (Все метки)

Привет всем)Нужна ваша помощь)
Задание:Дана строка из восьми цифровых символов. Переведите ее в формат даты "dd-mm-yyyy" и проверьте корректность такой даты.
В формат даты я перевести смогла и сообщение о корректности вывести,но только если дата правильная.(делфи видимо автоматически проверяет корректность).
Подскажите,что сделать,чтобы выводилось сообщение,если введённая дата неккоректна(сейчас у меня выскакивает системное сообщение - 'здесь неправильная дата' is not a valid date)
Извините,если путано объяснила и помогите пожалуйста).

Код:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
var
   D1: TDateTime;
   S,D: string;
begin
D:= edit1.text;
insert('.',D,3);
insert('.',D,6);
D1:=strtodate(D);
S:= FormatDateTime('dd-mm-yyyy',D1);
Label1.Caption:=S;
Label2.Caption:='Дата корректна';
end;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.06.2011, 11:51
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Строки.Вывод даты и сообщения о корректности. (Delphi):

Вывод даты в строки - Delphi
Ребят всем привет. Нужна ваша помощь! Итак, в Edit вводим некую цифру, пусть это будет 6. Нужно чтобы в мемо выводилась информация в...

Контроль ввода даты и выдача сообщения в случае ошибки неверного ввода - Delphi
Здравствуйте! У меня есть такая вот форма(скрин ниже). Смысл в том, что если пользователь введет в дате не дату(а там стоит тип данных -...

Контроль ввода даты в MaskEdit и выдача сообщения в случае ошибки неверного ввода - Delphi
Всем доброго дня! Использую MaskEdit для ввода даты формат: dd/mm/yyyy Помогите написать обработчик выдачи ошибки в ShowMessage "Не...

Вывод сообщения - Delphi
Задание: "Обеспечьте при нажатии кнопки Найти на второй форме вывод сообщения «Товар не найден» вместо вывода цены, если товар отсутствует...

вывод сообщения - Delphi
у меня такая ситуация: при нажатии на кнопку у меня рандомно вывод сообщение. как сделать так чтобы сообщение не повторялось?

Вывод сообщения в memo - Delphi
Всем доброго времени суток. Нужно вывести в мемо слова в стобик типо Население: 228 Площадь: 228 км^2 и др form6.memo1.text :='...

6
wason
17 / 17 / 1
Регистрация: 21.04.2010
Сообщений: 110
27.06.2011, 12:07 #2
может так
Delphi
1
2
3
4
5
6
7
try
S:= FormatDateTime('dd-mm-yyyy',D1);
except
Label2.Caption:='Дата не корректна';
exit;
 
end
1
Helene Rolles
0 / 0 / 0
Регистрация: 27.06.2011
Сообщений: 10
27.06.2011, 12:20  [ТС] #3
а куда это вставить нужно?
0
Puporev
Модератор
54009 / 41642 / 14725
Регистрация: 18.05.2008
Сообщений: 97,887
27.06.2011, 12:35 #4
Есть специальные функции для проверки корректности данных, оканчиваются на Def
Pascal
1
2
3
4
5
6
7
8
9
10
11
D:= edit1.text;
insert('.',D,3);
insert('.',D,6);
D1:=strtodatedef(D,0);
if D1=0 then Label2.Caption:='Дата не корректна'
else
 begin
  Label2.Caption:='Дата корректна';
  S:= FormatDateTime('dd-mm-yyyy',D1);
  Label1.Caption:=S;
 end;
Добавлено через 3 минуты
Предложенный выше вариант не будет работать. В нем вместо текста в Лабель нужно писать showmessage взамен системному сообщению об ошибке.
1
Helene Rolles
0 / 0 / 0
Регистрация: 27.06.2011
Сообщений: 10
27.06.2011, 12:36  [ТС] #5
Всё работает)Спасибо большое)
0
wason
17 / 17 / 1
Регистрация: 21.04.2010
Сообщений: 110
27.06.2011, 13:10 #6
Цитата Сообщение от Puporev Посмотреть сообщение
Предложенный выше вариант не будет работать. В нем вместо текста в Лабель нужно писать showmessage взамен системному сообщению об ошибке.
все работает многоуважаемый) наверно медленнее но работает
0
Puporev
Модератор
54009 / 41642 / 14725
Регистрация: 18.05.2008
Сообщений: 97,887
27.06.2011, 13:52 #7
Не знаю. Я тоже так пробовал, но все равно вышибает с системной ошибкой, проверьте сами.
0
27.06.2011, 13:52
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2011, 13:52
Привет! Вот еще темы с ответами:

Часы и вывод сообщения - Delphi
Всем привет, с наступающим новым годом. Вот у меня программа, нужно выводить в соответсвующее сообщение по времени, к примеру 22.00..07.00:...

Вывод сообщения с условиями - Delphi
На форме 3 элемента: MaskEdit1, BitBtn1, RadioButton1. Необходимо при нажатии на кнопку: если отмечен radiobutton1 и если пользователь...

Вывод сообщения об обработке на экран - Delphi
Всем привет! Создаю небольшую программку, которая обрабатывает определенные данные из таблиц MSSQL. Если кратко, то при выборе...

Вывод даты - Delphi
Привет) У меня на форме есть Edit1 и DateTimePicker1. Вопрос: как добавить дату из DateTimePicker1 в Edit1? procedure...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru