Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.78/9: Рейтинг темы: голосов - 9, средняя оценка - 4.78
Helene Rolles
0 / 0 / 0
Регистрация: 27.06.2011
Сообщений: 10
1

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

27.06.2011, 11:51. Просмотров 1706. Ответов 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
Ответы с готовыми решениями:

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

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

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

Вывод сообщения
Задание: "Обеспечьте при нажатии кнопки Найти на второй форме вывод сообщения...

вывод сообщения
у меня такая ситуация: при нажатии на кнопку у меня рандомно вывод сообщение....

6
wason
17 / 17 / 8
Регистрация: 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
Модератор
55429 / 42552 / 29405
Регистрация: 18.05.2008
Сообщений: 100,668
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 / 8
Регистрация: 21.04.2010
Сообщений: 110
27.06.2011, 13:10 6
Цитата Сообщение от Puporev Посмотреть сообщение
Предложенный выше вариант не будет работать. В нем вместо текста в Лабель нужно писать showmessage взамен системному сообщению об ошибке.
все работает многоуважаемый) наверно медленнее но работает
0
Puporev
Модератор
55429 / 42552 / 29405
Регистрация: 18.05.2008
Сообщений: 100,668
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

Вывод сообщения в memo
Всем доброго времени суток. Нужно вывести в мемо слова в стобик типо ...

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

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


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

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

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