![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Как узнать нынешний год? месяц? день недели?
Спасибо.... |
|
#2
|
||||
|
||||
|
Код:
function GetCurrentDateTime: TDateTime; var SystemTime: TSystemTime; begin GetLocalTime(SystemTime); Result := SystemTimeToDateTime(SystemTime); end; А дальше уже сам разберешься ![]() |
|
#3
|
||||
|
||||
|
А есть и по короче :
Компонент стандарный DateUtils Функция DayOfTheYear -Выдает день года для значения TDateTime (ISO 8601) Функция -DayOfTheMonth -Дает день месяца для значения TDateTime (ISO 8601) и т д |
|
#4
|
|||
|
|||
|
ты уверен что он стандартный? и как мне вытащить год? спс...
|
|
#5
|
|||
|
|||
|
Сделай пример кода.... плиззз
|
|
#6
|
||||
|
||||
|
Код:
function RetDate(inDate: TDateTime; inType: integer): integer;
var
xYear, xMonth, xDay: word;
begin
Result := 0;
DecodeDate(inDate, xYear, xMonth, xDay);
case inType of
1: Result := xYear; // год
2: Result := xMonth; // месяц
3: Result := xDay; // день
4: if xMonth < 4 then
Result := 1
else // квартал
if xMonth < 7 then
Result := 2
else
if xMonth < 10 then
Result := 3
else
Result := 4;
end;
end;
|
|
#7
|
|||
|
|||
|
немного не понял. Почему 4,7,10???
|
|
#8
|
|||
|
|||
|
Я весь день парюсь...
НИЧЕГО НЕ ПОЛУЧАЕТСЯ.... кто нибуть П О Ж А Л У Й С Т О разложите мне по полочкам как определить: 1: год 2: месяц 3: число 4: День недели ПЛИЗЗЗЗЗЗЗЗЗЗЗЗЗ.................... выслушаю всех! |
|
#9
|
||||
|
||||
|
Код:
var inDate: TDateTime; xYear, xMonth, xDay: Integer; SystemTime: TSystemTime; begin GetLocalTime(SystemTime); inDate := SystemTimeToDateTime(SystemTime); DecodeDate(inDate, xYear, xMonth, xDay); // в xYear - год // в xMonth - месяц // в xDay - день end; |
|
#10
|
|||
|
|||
|
ошибку выдайот! и показывает на эту строчку =>
DecodeDate(inDate, xYear, xMonth, xDay); Последний раз редактировалось killerkill, 28.07.2007 в 20:35. |
|
#11
|
|||
|
|||
|
всё ОК! А ты знаеш как определить сколько дней в месяце?
|
|
#12
|
||||
|
||||
|
Да, идешь case'ом по переменной xMonth,
то есть, если месяц первый, то дней столько-то, если второй, то столько-то и т.д., ты ведь знаешь сколько дней в месяцах, вот и все. Ну а можно, как в одном из примеров: Автор: Ревенко Алексей Код:
// Колическтво дней в любом месяце любого
// года можно получить с помощью EndOfAMonth
var
YYYY, MM, DD: Word;
D: TDateTime;
begin
DecodeDate(Date, YYYY, MM, DD);
D := EndOfAMonth(YYYY, {Номер месяца});
DecodeDate(D, YYYY, MM, DD); // DD - номер последнего дня в месяце
end;©Drkb::00732 http://delphiworld.narod.ru/ DelphiWorld 6.0 -------------------------------------------------------------------------- Получить число дней в месяце Код:
function DaysOfMonth(mm, yy: Integer): Integer;
begin
if mm = 2 then
begin
Result := 28;
if IsLeapYear(yy) then Result := 29;
end
else
begin
if mm < 8 then
begin
if (mm mod 2) = 0 then
Result := 30
else
Result := 31;
end
else
begin
if (mm mod 2) = 0 then
Result := 31
else
Result := 30;
end;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
days: Integer;
begin
days := DaysOfMonth(7, 2001);
ShowMessage('July 2001 has ' + IntToStr(days) + ' days');
end; ©Drkb::00735 http://delphiworld.narod.ru/ DelphiWorld 6.0 -------------------------------------------------------------------------- Код:
function LastDayOfCurrentMonth: TDate;
var
y, m, d: Word;
begin
DecodeDate(now, y, m, d);
m := m + 1;
if m 12 then
begin
y := y + 1;
m := 1;
end;
Result := EncodeDate(y, m, 1) - 1;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
ShowMessage(DateToStr(LastDayOfCurrentMonth));
end;©Drkb::00736 http://delphiworld.narod.ru/ DelphiWorld 6.0 Последний раз редактировалось 4kusNick, 28.07.2007 в 23:27. |
|
#13
|
|||
|
|||
|
Спасибо!!!! тебе.....
если не в лень раскажи про Компонент DateUtils (чё это вообще за хрень? перебрал все компоненты, нету(но работает)....!) ![]() Последний раз редактировалось killerkill, 28.07.2007 в 23:53. |
|
#14
|
||||
|
||||
|
DateUtils - это модуль, его надо подключать вместе с остальными.
В начале твоего pas юнита есть раздел uses там перечислены разные модулы, вот туда ты можешь добавть DateUtils |