Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DATETIMEPICKER - четырехзначный год? [D3, D5, Win95/98, Win2k]


Страницы:   1 2

Fishka ©   (2002-09-26 10:08:00) 

На компьютере установлен двухзначный год ("Язык и стандарты").
Как мне в программе сделать, чтобы в компоненте DATETIMEPICKER год был в формате "dd.mm.yyyy"?
ShortDateFormat ничего не дает.
Rx-компоненты устанавливать не буду.
Заранее спасибо за советы.


MBo   (2002-09-27 10:06:00) [1]

>И как, где можно достать MSDN?
msdn.microsoft.com
или на дисках


Anatoly Podgoretsky   (2002-09-27 10:05:00) [2]

Fishka (27.09.02 10:00)
Да он с ошибками, возьми обновление у Борланда


Fishka   (2002-09-27 10:00:00) [3]

>MBo © (27.09.02 09:36)
И как, где можно достать MSDN?

>Anatoly Podgoretsky © (27.09.02 09:42)
У меня help с компашки, а он необновленный.


Anatoly Podgoretsky   (2002-09-27 09:42:00) [4]

Что бы не быть головословным, вот полная выписка их хелпа, Д5 с обновленным хелпом.

procedure TForm1.Button1Click(Sender: TObject);

begin
DateSeparator := "-";
ShortDateFormat := "m/d/yyyy";
Label1.Caption := DateToStr(Date);
end;

Полнотекстовый поиск по всех исходным текстам Дельфи также не находит DateFullYear


MBo   (2002-09-27 09:36:00) [5]

>кто бы мог подумать, что "буквы M должны быть большими
(26.09.02 13:44)
>откуда об этом можно узнать
из MSDN


Fishka   (2002-09-27 09:31:00) [6]

>Anatoly Podgoretsky © (26.09.02 17:01)
В help-у выбираю: DateSeparator,example. И получаю пример, приведенный выше.

>MBo © (26.09.02 16:52)
Да, все получилось. Ну, кто бы мог подумать, что " буквы M должны быть большими". И откуда об этом можно узнать?

И еще раз всем СПАСИБО.



Anatoly Podgoretsky   (2002-09-26 17:01:00) [7]

Fishka (26.09.02 14:00)
В моем примере и в теме нет таких переменных (д5)
DateFullYear := True; //ошибка выдается ЗДЕСЬ
DateLeadZero := True;


MBo   (2002-09-26 16:52:00) [8]

буквы M должны быть большими


Fishka   (2002-09-26 16:46:00) [9]

Год в OnShow стал четырехзначным, а месяц =36 и не меняется.
Что это такое случилось?


Fishka   (2002-09-26 15:28:00) [10]

MBo © (26.09.02 15:03)
Ну, вот и год в OnShow стал четырехзначным. Спасибо.


MBo   (2002-09-26 15:03:00) [11]

Немудрено, что так происходит.
Вставь в OnShow


Separator   (2002-09-26 14:46:00) [12]

Попробуй так:

type
TMyDateTimePicker = class(TDateTimePicker)
private
FFormat: String;
procedure SetFormat(const Value: String);
public
property Format: String read FFormat write SetFormat; //В 6 Delphi это в published
end;
....................
procedure TMyDateTimePicker.SetFormat(const Value: String);
begin
if FFormat <> Value then
begin
FFormat := Value;
SendMessage(Handle, DTM_SETFORMAT, 0 , Integer(PChar(FFormat)));
end;
end;


Fishka   (2002-09-26 14:18:00) [13]

В новом проекте на OnCreate формы мною написано:
ShortDateFormat := "dd.mm.yyyy";
DateTimePicker1.Perform(DTM_SETFORMAT,0,Integer(Pchar("dd.MM.yyyy")));

И год в компоненте по-прежнему двухзначный..................
Что у меня не так? (DELPHI5, WINDOWS2000)


MBo   (2002-09-26 14:10:00) [14]

>И год в компоненте по-прежнему двухзначный

У меня в D5 меняется с двух - на 4-х значный


Fishka   (2002-09-26 14:00:00) [15]

>Anatoly Podgoretsky © (26.09.02 13:45)
Currency and date/time formatting variables
Далее Example:
Currency and date/time formatting Example

>MBo © (26.09.02 13:44)
DateTimePicker1.Perform(DTM_SETFORMAT,0,Integer(Pchar("dd.MM.yyyy"))); - ошибок не выдается.
И год в компоненте по-прежнему двухзначный.

>Separator © (26.09.02 13:44)
Мне не нужны никакие Label. Это был просто пример.
Мне нужен год в компоненте четырехзначный.




Anatoly Podgoretsky   (2002-09-26 13:45:00) [16]

Из какого хелпа (тема) данный пример?


MBo   (2002-09-26 13:44:00) [17]

DateTimePicker1.Perform(DTM_SETFORMAT,0,Integer(Pchar("dd.MM.yyyy")));


Separator   (2002-09-26 13:44:00) [18]

Короче, что-то мы тут пургу несем, а не легче написать так:
Labe1.Caption:= FormatDateTime("dd.mm.yyyy", DateTimePicker1.Date);


Fishka   (2002-09-26 13:34:00) [19]

>Separator © (26.09.02 13:06)
DateTimePicker1.Format:= "dd.mm.yyyy"; - выдается ошибка "не декларирован идентификатор Format".

>MBo © (26.09.02 12:46)
Пока не очень понятно. Но все равно спасибо за совет.....

И еще. Почему-то не работает пример из Help-а.

This example uses a label and a button on a form. When the user clicks the button, the current date displays in the caption of the label. Because some of the date variables are assigned new values, the format of the date in the label changes. For example, if the date is 9/15/94, the date displays as 9-15-1994.

procedure TForm1.Button1Click(Sender: TObject);

begin
DateSeparator := "-";
DateFullYear := True; //ошибка выдается ЗДЕСЬ
DateLeadZero := True;
Label1.Caption := DateToStr(Date);
end;


А проблема моя так пока и не решена.


Separator   (2002-09-26 13:22:00) [20]

народ у кого 5 дульфи посмотрите, что там можно сделать


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо