Главная страница
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.041 c
2-1148281767
deltav1
2006-05-22 11:09
2006.06.11
параллелизм


15-1148073512
Imbac
2006-05-20 01:18
2006.06.11
php-fusion


6-1139003480
newprogrammer
2006-02-04 00:51
2006.06.11
сервер на базе winsock2


2-1148178304
Мурзилка
2006-05-21 06:25
2006.06.11
запрет на нажатие клавиши


2-1148300580
Cherman
2006-05-22 16:23
2006.06.11
массив строк