Вниз
Скачать: CL | DM;

процедура реагирующая на положение указателя мыши   Найти похожие ветки 

 
novi   (2004-03-13 22:30) [0]

Уважаемые мастера! Помогите пожалуйста.
Условие задачи следующее: на форме расположено три круга разного цвета. Сначала они прозрачные, но по наведению мыши в круг они должны заливаться своим цветом, после увода мыши должны стать опять прозрачными.
Написал функцию определения мыши, а процедуру закраски ...
function Svet(var s:TBrushStyle):TBrushStyle;
var r, cx, cy, d:real; shp: TShape;
x, y: integer;
begin
 r:= shp.Width/2;
 cx:= shp.Width/2;
 cy:= shp.Height/2;
 d:= sqrt(sqr(x-cx)+sqr(y-cy));
 if d<r then s:= bsSolid else s:= bsClear;
end;


 
Mihey ©   (2004-03-13 22:53) [1]

И какой вопрос то???


 
novi   (2004-03-13 23:01) [2]

Не получается закрасить.


 
Mihey ©   (2004-03-14 00:41) [3]

Есть:

var r, cx, cy, d:real; shp: TShape;
x, y: integer;
begin
r:= shp.Width/2;
cx:= shp.Width/2;
cy:= shp.Height/2;
d:= sqrt(sqr(x-cx)+sqr(y-cy));
if d<r then s:= bsSolid else s:= bsClear;
end;

Надо:

var r, cx, cy, d:real; shp: TShape;
x, y: integer;
begin
r:= shp.Width/2;
cx:= shp.Width/2;
cy:= shp.Height/2;
d:= sqrt(sqr(x-cx)+sqr(y-cy));
if d<r then Result := bsSolid else Result := bsClear;
end;


 
default ©   (2004-03-14 01:38) [4]

можешь кстати TShape использовать, тогда вообще ничего считать не нужно...


 
Думкин ©   (2004-03-14 15:56) [5]

Телепатироване подсказывает какие события при находе и исходе?
Так есть такие в дельфях - onMouseLeave, onMouseEnter - только осталось их работать заставить.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.028 c
3-1083604739
@Igor
2004-05-03 21:18
2004.05.30
Как создать БД на сервере(MySQL)


1-1084822240
connect
2004-05-17 23:30
2004.05.30
Как взять значение переменных окружения в виндузе и ....


1-1084459200
WebErr
2004-05-13 18:40
2004.05.30
template for Pascal


11-1074337661
puky
2004-01-17 14:07
2004.05.30
DirectX in KOL


7-1083062572
nv_
2004-04-27 14:42
2004.05.30
Как предотвратить повторные запуски ДОС программ?




   Наверх