Форум: "Основная";
Текущий архив: 2002.01.21;
Скачать: [xml.tar.bz2];
ВнизКак сделать паузу. Найти похожие ветки
← →
Mis (2002-01-02 13:41) [0]Подскажите please, спомощью чего можно организовать паузу на заданное время.
← →
sleep (2002-01-02 13:52) [1]sleep(время)
← →
nil (2002-01-02 14:50) [2]GetTickCount
← →
skaminski~~~~ (2002-01-02 23:49) [3]
procedure Delay(msecs:integer);
var
FirstTickCount:longint;
begin
FirstTickCount:=GetTickCount;
repeat
Application.ProcessMessages;
until ((GetTickCount-FirstTickCount) >= Longint(msecs));
end;
← →
MrBeer (2002-01-03 09:00) [4]Esli ya oshibajusj - izpravte menya, no pod *nix (nadejus pod Win32 eto takzhe rabotaet) esli nado na korotkoe vremya (<1ms) mozhno polzovatj select (v win32 eto v winsock2.h sidit):
int select (
int nfds,
fd_set FAR * readfds,
fd_set FAR * writefds,
fd_set FAR * exceptfds,
const struct timeval FAR * timeout
);
Sootvetsvenno na C eto budet (ne pomnju kak eti strukturi konvertnuli na Obj. Pascal, sam posmotri):
fd_set set;
FD_ZERO(&set); // Pustoi descriptor set
struct timeval time;
time.tv_sec = 0;
time.tv_usec = 50; //50 mikrosekund!
select(0,&set,&set,&set,&time);
Best regards, MrBeer.
← →
cdaDmitriy (2002-01-03 09:18) [5]>> skaminski~~~~
хочет наступать на грабли если приводишь кодто ПОДУМАЙ
что будет при изменении даты
GetTickCount -- тики с начала суток !!!!!
← →
Anatoly Podgoretsky (2002-01-03 09:29) [6]Приведите доказательство.
← →
MrBeer (2002-01-03 09:32) [7]GetTickCount millisekundi ot restarta windows.
Best regards.
← →
gek (2002-01-03 09:33) [8]GetTickCount - количество тиков таймера с начала загрузки системы, а не начала суток
← →
Ujin_m (2002-01-03 12:19) [9]Vse horosho no pri etom CPU rabotaet pod 100%. Luchshe povesit timer na formu i ispolzovat WaitForObject dlia prodoljenia rabotu.
← →
Bakca (2002-01-03 12:34) [10]Я в основном использую sleep. Насколько я понимаю, он
замораживет поток на заданное время (в ms). Что и требуется.
← →
Knight (2002-01-03 12:41) [11]skaminski контузило :))
← →
Ujin_m (2002-01-03 12:42) [12]Naschet sleep Ia ne uveren chto on deistvitelno gramotno tormozit potok. Timer ne obiazatelen mojno prosto:
try
WaitFor (Self.TerminateEvent.Handle, 5000, True);
except
on E:Exception do
;//Ignore
end;
← →
Smartov (2002-01-03 15:21) [13]Люди, чего вы столько гемора советуете
Если приложение не на АПИхах а ВЦЛ то не
гемморойся а поставь на форму таймер со страницы
System, которому выставь отрезок времени на
который надо паузу, и выставьEnabled=False
В нужныій момент Enabled присваивай True. Внуть
события по таймеру запихни код который, где опять
сделайEnabled=False
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.01.21;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.003 c