Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.11;
Скачать: CL | DM;

Вниз

Кнопка   Найти похожие ветки 

 
Helen   (2006-05-24 00:39) [0]

Каким образом можно сделать так, чтобы при нажатии на конпку, например 3 сек, запускалось одно, а при простом нажатии другое?


 
alex-drob ©   (2006-05-24 00:45) [1]

var
 t:ttime;

procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 t:=now;
end;

procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
if now-t<StrToTime("0:00:03") then
 caption:="Действие 1"
 else
 caption:="Действие 2"
end;


 
SedAche   (2006-05-24 01:07) [2]

А как чтобы по окончании 3 секунд, не отжимая клавишу, запускалось действие?


 
alex-drob ©   (2006-05-24 01:15) [3]

procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 Timer1.Interval:=3000;
 Timer1.Enabled:=True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Timer1.Enabled:=False;
 Действие;
end;


 
alex-drob ©   (2006-05-24 01:18) [4]

+

procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 Timer1.Enabled:=False
end;


 
alex-drob ©   (2006-05-24 01:24) [5]

Вот с двумя действиями


var b:Boolean;

procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 b:=False;
 Timer1.Interval:=3000;
 Timer1.Enabled:=True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Timer1.Enabled:=False;
 b:=True;
 Действие 2
end;

procedure TForm1.Button1MouseUp(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 Timer1.Enabled:=False
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
if b then exit;
Действие 1
end;


 
Loginov Dmitry ©   (2006-05-24 09:34) [6]

А разве кнопки можно только мышкой нажимать?
(Есть еще пробел...)


 
ЮЮ ©   (2006-05-24 10:33) [7]


> А разве кнопки можно только мышкой нажимать?

а это будет простое нажатие. Фича достигается только мышью :)



Страницы: 1 вся ветка

Текущий архив: 2006.06.11;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.043 c
15-1147970494
Empleado
2006-05-18 20:41
2006.06.11
< удалено модератором >


6-1139323407
0bsid
2006-02-07 17:43
2006.06.11
WinInet. как указать прокси?


1-1146891942
chizra
2006-05-06 09:05
2006.06.11
Установка Delphi5 поверх Delphi6


1-1146559645
neo_cleaner
2006-05-02 12:47
2006.06.11
сохранение формы


5-1133350415
Vitek
2005-11-30 14:33
2006.06.11
DLL и форма