Форум: "Основная";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
ВнизПроцедура ReplaceDate Найти похожие ветки
← →
Master Paleva © (2004-05-23 16:18) [0]Кто-нибудь может показать мне как работает процедура ReplaceDate(var DateTime:TDateTime; Const NewDate: TDAteTime). Почему то у меня ничего не получается, хотя я подставляю правильное значение. Может быть для этой процедуры существуют какие-нибудь оговорки?
← →
VMcL © (2004-05-23 16:24) [1]Конец мая - телепаты в отпуске. Так что, код в студию.
← →
Master Paleva © (2004-05-23 16:27) [2]Ну, например
dt: TDate;
begin
dt:=date;
ReplaceDate(dt);
не работает.
← →
VMcL © (2004-05-23 16:37) [3]>>Master Paleva © (23.05.04 16:27) [2]
1. "Не работает" что значит? Не компилируется? Не запускается? Вызывает исключение?
2. Внимательно читаем Help. Как минимум: у ReplaceDate - 2 параметра.
← →
Master Paleva © (2004-05-23 16:42) [4]Не компилируется.
Даже с двумя параметрами не компилируется(ReplaceDate(dt,dt2));
← →
Palladin © (2004-05-23 16:45) [5]Второй раз. Читаем справку внимателно!
← →
Master Paleva © (2004-05-23 16:50) [6]Пробовал использовать альтернативу:
var SystemTime:TSystemTime
begin
GetLocalTime(SystemTime);
SetSystemTime(SystemTime);
так получается, а так:
dt:TDateTime;
SetSystemTime(DateTimeToSystemTime(dt));
не выходит.
Никто не может подсказать мне как переставить время?
← →
Master Paleva © (2004-05-23 16:52) [7]Дело не в синтаксических или логических ошибках. Я все задаю правильно, как это функция просит, но все равно не компилирует.
← →
Palladin © (2004-05-23 16:57) [8]Значит читать внимательно справку и вдумыватся в сообщение ошибки при компиляции не хочется? Если бы хотелось то при прочтении ошибки ты бы понял что актуальный и формальный типы параметра переданного по ссылке (Var) не совпадают и на основании этого заглянул бы в справку и удостоверился что: Да! TDate это не TDateTime.
← →
Master Paleva © (2004-05-23 18:32) [9]Palladin © (23.05.04 16:57) [8]
Да! TDate это не TDateTime.
Это я и без справки знал. И дело не в лени. Попробуйте сами, если интересно, воспользоваться этой процедурой. Возможно, что вы столкнётесь с такой же проблемой.
← →
Master Paleva © (2004-05-23 18:35) [10]Я уже второй раз задаю этот вопрос на форуме, но на до мной либо прикалываются, либо дают советы обратиться к справке.
Кто-нибудь может реально помочь?
← →
Palladin © (2004-05-23 18:37) [11]var
dt,
newd:TDateTime;
begin
dt:=now;
newd:=EncodeDate(2002,1,1);
ShowMessage(DateToStr(dt));
ReplaceDate(dt,newd);
ShowMessage(DateToStr(dt));
end;
---
LMD
← →
Master Paleva © (2004-05-23 18:43) [12]Palladin © (23.05.04 18:37) [11]
Блин, я кажется что то напутал. Эта процедура не меняет системное время. Но все равно спасибо.
← →
Vlad © (2004-05-23 18:44) [13]Думаю, так более наглядно будет
var
DT1: TDateTime;
DT2: TDateTime;
begin
DT1:=Date + Time;
DT2:=(Date - 1) + Time;
ShowMessage(DateTimeToStr(DT1));
ReplaceDate(DT1, DT2);
ShowMessage(DateTimeToStr(DT1));
end;
---
пускай живут :-)
← →
Master Paleva © (2004-05-23 18:47) [14]Vlad © (23.05.04 18:44) [13]
Спасибо. А как изменить системное время, случайно, не знаете?
← →
Palladin © (2004-05-23 18:53) [15]
> Vlad © (23.05.04 18:44)
Ну уж нет...
> Master Paleva © (23.05.04 18:47)
читать справку упорне не желаем?
SetSystemTime + F1
DateTimeToSystemTime + F1
---
LMD
← →
Master Paleva © (2004-05-23 19:01) [16]Дело в том, что у меня какие-то проблемы со справкой. Там нет
SetSystemTime.
← →
Palladin © (2004-05-23 19:07) [17]SetSystemTime - это функция WinAPI и смотреть ее нужно в другой справке, в меню IDE\Help она фигурирует как Windows SDK, на ее использование тобой в [6] Master Paleva © (23.05.04 16:50) у меня нареканий нет, но прежде чем использовать таким образом DateTimeToSystemTime нужно было хотя бы по нему справку почитать. Откуда мысль что это функция вообще?
---
LMD
← →
Vlad © (2004-05-23 19:08) [18]И даже тут нету ?
C:\Program Files\Common Files\Borland Shared\MSHelp\win32sdk.hlp
← →
Master Paleva © (2004-05-23 19:25) [19]Palladin © (23.05.04 19:07) [17]
var dt:TDateTime;
DateTimeToSystemTime(dt);
Так тоже не работает.
← →
Palladin © (2004-05-23 19:29) [20]Что у тебя в справке написано про DateTimeToSystemTime. Скопируй сюда пожалуйста. А...
---
LMD
← →
Master Paleva © (2004-05-23 19:31) [21]procedure DateTimeToSystemTime(DateTime: TDateTime; var SystemTime: TSystemTime);
← →
Palladin © (2004-05-23 19:35) [22]ну и? ничего в голову не приходит по этому поводу?
---
LMD
← →
Vlad © (2004-05-23 19:36) [23]
> Master Paleva © (23.05.04 19:31) [21]
Как видишь - там ДВА параметра, причем разнотипных.
Так какого же <censored> ты туда один пытаешься передать ?
---
все равно пусть живут ! :-)
← →
Master Paleva © (2004-05-23 19:36) [24]var dt:TDateTime; dt2:TSystemTime
DateTimeToSystemTime(dt,dt2);
Пробовал ещё так.
← →
Master Paleva © (2004-05-23 19:39) [25]Vlad © (23.05.04 19:36) [23]
Большое спасибо, что навели на мысль. Все получилось. Надо мне будет потренировать мозги чем-нибудь.
← →
Palladin © (2004-05-23 19:44) [26]
Var
dt:TDateTime;
s:_SYSTEMTIME; // измени на TSystemTime
begin
dt:=EncodeDateTime(2002,1,1,12,0,0,0);
DateTimeToSystemTime(dt,s);
SetSystemTime(s);
end;
---
LMD
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.06.06;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.03 c