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

Вниз

прозрачность TGraphicControl а   Найти похожие ветки 

 
race1 ©   (2003-07-22 14:52) [0]

представьте такую картину:
рисуем на сабжевом канвасе баранку, т.е. круг и в сердинке дырка. теперь нарисуем внутри этой баранки (т.е. там где дырка) на другом сабжевом канвасе полностью круг.

теперь попытаемся перехватить нажатие кнопки мышки на круге (не баранке) и у нас ничего не выйдет т.к. первый сабж (баранка) полностью перекрыл второй (круг).

а нельзя как-нибудь нажать на круге мышкой, что бы вызвался его обработчик (круга)? SendToBack\Front нужного эффекта не даёт


 
Spawn ©   (2003-07-22 18:11) [1]

Если я правильно понял, то делай так - введи какую либо переменную, влияющую на то чей обработчик будет вызван, а потом в обработчике клика на "баранке" пиши что то типа:

if <условие> then
<Обработка клика>
else
OnGraphicControl2MouseClick(GraphicControl2){Разумеется OnGraphicControl2MouseClick должен быть описан}


 
Ader_007   (2003-07-22 20:54) [2]

Var Xc, Yc : Integer; {координаты центра круга-не_бублика}
R : Integer; {радиус круга-не_бублика}

procedure TAny_Class.БубликClick(Sender: TObject);
Begin
if ((Mouse.X - Xc)**)+((mouse.y-Yc)**)<r** then
CircleClick(Sender) else
Begin
....//А вот тут мы кликнули на самом бублике
end;

Может с синтаксисом напутал, но идея я думаю ясна.


 
race1 ©   (2003-07-23 05:58) [3]

//Spawn © (22.07.03 18:11)
GraphicControl2 - это круг, да?

впринципе, идея хорошая, но маленько не то. то что было в первом письме я упростил. может быть любое сочетание самых разных примитивов, а не только закомпелированные бублики и кружки :). и мы не можем знать что находится под кликнутой фигурой

планирую примитивы сделать типа TShape; но Шэйп сам прямоугольный, хоть и прозрачный, и перекрывает лежащие под ним другие шэйпы.

мне вот что в голову пришло: если мы кликнули на шэйпе на прозрачном цвете, то отправляем этот шэйп назад (SendToBack) и снова кликаем, но программно

//Ader_007 (22.07.03 20:54)
нет, это уж слишком узконаправленно :)



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

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

Наверх




Память: 0.47 MB
Время: 0.014 c
4-10501
anod
2003-05-31 07:02
2003.08.04
Опять НООКи


6-10338
vlad270671
2003-05-30 14:35
2003.08.04
SMAPI и присоедененные файлы


3-10147
OlkaGTS
2003-07-11 14:07
2003.08.04
Фильтр и индекс по Lookup полю


3-10136
elshad_s
2003-07-14 16:07
2003.08.04
Как получить список ключевых полей в таблице


1-10255
PrettyFly
2003-07-20 13:22
2003.08.04
Framы - диверсанты ;-)