Чувствительность графических объектов при наложении...

 

Предположим создаю два объекта Bmp label с одинаковыми координатами и одинаковыми размерами

картинок в такой вот последовательности :

1. BmpLabel_1

2. BmpLabel_2 

Понятно, что  BmpLabel_2 наложится на BmpLabel_1 и BmpLabel_1 будет нечувствительна, но BmpLabel_2 - чувствительная.

Теперь передвигаю  BmpLabel_2  так, что BmpLabel_2  не пересекается с BmpLabel_1.

После этого  BmpLabel_1 становится чувствительной.

А вот теперрь передвигаю  BmpLabel_2 на старое место, чтобы BmpLabel_2 полностью 

пересекалась с  BmpLabel_1.

Интересно то, что теперь  BmpLabel_2  стала нечувствительной.

Такая же картина и с другими объектами, например с Edit - объектами. 

Кто-нибудь сталкивался с такой ситуацией ? 

 

Сейчас еще фишку одну проверю - приоритет на нажатие мышью....

 

Да, постояно сталкиваюсь, задолбало уже открывать список объектов для поиска нужного. А когда их очень много ...?

В принципе, процедура простая.

Щелкаем мышкой, открываем список объектов, находим по "галочке" выбранный объект и переносим "галочку" на тот, который нужен.

Или сразу открываем свойства того объекта, который нужен.

 

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

Такой подход широко используется во многих приложениях. К примеру Google Earth. Хотя для справедливости нужно отметить, что эта проблема не решена и во многих других известных приложениях (Microsoft Office, например).

 
Scriptong:

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

Такой подход широко используется во многих приложениях. К примеру Google Earth. Хотя для справедливости нужно отметить, что эта проблема не решена и во многих других известных приложениях (Microsoft Office, например).

не знаю, но мне помогла эта фишка - приоритет на нажатие мышью....

если я знаю что   приоритеты на нажатие мышью  у налагаемых объектов равны,

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

 
more:

приоритет на нажатие мышью....

Что за зверь? Может этот?

 ObjectSetInteger(chart_ID,name,OBJPROP_ZORDER,z_order);

 Если да, то такое поведение объекта можно заложить только программно. Я же говорю о тех объектах, которые размещаются на графике самим пользователем.

 
Scriptong:

Что за зверь? Может этот?

 Если да, то такое поведение объекта можно заложить только программно. Я же говорю о тех объектах, которые размещаются на графике самим пользователем.




ну да, это.  да, да, все понятно. спасибо.
 
подскажите пожалуйста)
есть кнопка на графике OBJ_BUTTON она имеет приоритет на нажатия мышью (ZORDER) 5
есть уровень(отображается на заднем плане графика) приоритет на нажатие уровня по умолчанию 0 который проходит в центре кнопки, но кнопка сверху уровня
как сделать так что бы при нажатии на кнопку уровень никогда не нажимался... почему то приоритет ничего не даёт жму на кнопку 2 раза - нажимается кнопка и выделяется уровень под кнопкой(
 
Money_Maker:
подскажите пожалуйста)
есть кнопка на графике OBJ_BUTTON она имеет приоритет на нажатия мышью (ZORDER) 5
есть уровень(отображается на заднем плане графика) приоритет на нажатие уровня по умолчанию 0 который проходит в центре кнопки, но кнопка сверху уровня
как сделать так что бы при нажатии на кнопку уровень никогда не нажимался... почему то приоритет ничего не даёт жму на кнопку 2 раза - нажимается кнопка и выделяется уровень под кнопкой(

Если программно, то уровню задайте свойство OBJPROP_SELECTABLE как false:

ObjectSetInteger(chart_id, object_name, OBJPROP_SELECTABLE, false);

 
artmedia70:

Если программно, то уровню задайте свойство OBJPROP_SELECTABLE как false:

ObjectSetInteger(chart_id, object_name, OBJPROP_SELECTABLE, false);

проблема в том что уровни я иногда удаляю или двигаю мышью и не могу задать такое свойство по этой причине(((( могу только повысить приоритет кнопок но это почему то не помогает((( 
 
Money_Maker:
проблема в том что уровни я иногда удаляю или двигаю мышью и не могу задать такое свойство по этой причине(((( могу только повысить приоритет кнопок но это почему то не помогает((( 
Ну, дык так бы и сказал from the very begining... 
Причина обращения: