Форум: "Начинающим";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];
ВнизЗона для клика мышкой Найти похожие ветки
← →
Ell © (2006-07-18 11:18) [0]На панели (TPanel) я расположил массив из TImage, создаваемый по событию FormCreate. Теперь мне надо отловить щелчки мыши по рабочей зоне Panel1. Обработка события по щелчку на элементе массива TImage не годиться, так как рисунки покрывают не всю Panel1.
Я хотел поместить на форму пустой дополнительный TImage, подогнав его размеры под размеры панели, и отслеживать клики по нему, но когда при FormCreate происходит создание массива, то этот TImage оказывается расположенным _под_ними_ и клики уже не обрабатывает. Как рациональнее сделать? Может, подскажете команду помещения элемента на передний план?
← →
Ega23 © (2006-07-18 11:20) [1]BringToFront, SendToBack
← →
umbra © (2006-07-18 11:35) [2]
> отловить щелчки мыши по рабочей зоне Panel1
сделайте один обработчикOnClick
для панели и изображений и в нем проверяйте, по какому компоненту был щелчок, кодом наподобиеif sender is TPanel then
begin
{......................}
exit;
end;
if sender is TImage then
begin
{......................}
end;
← →
Ell © (2006-07-18 12:11) [3]Ega23:
> BringToFront, SendToBack
Спасибо.
umbra:
> сделайте один обработчик OnClick для панели и изображений
> и в нем проверяйте, по какому компоненту был щелчок
Спасибо, но в данном случае, наверное легче один раз написать обработчик, расположив зону, по которой будет щелчок, сверху - BringToFront, а попадает ли по изображению и по какому, можно вычислить из координат.
← →
StriderMan © (2006-07-18 12:56) [4]
> Я хотел поместить на форму пустой дополнительный TImage, подогнав его размеры под размеры панели, и отслеживать клики по нему
лучше класть не TImage а простой TControl. В ран-тайме.
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.08.06;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c