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

Вниз

Как определить координаты компонента на форме?   Найти похожие ветки 

 
igornov   (2006-08-18 09:54) [0]

Hi All!

 Есть некое приложение с компонентом типа Gbgrid (точно не знаю ибо приложение чужое и исходников нет). Так вот в нём фокус перемещается по ячейкам. Необходимо добавить под текущей ячейкой (в фокусе) некоторую информацию для пользователя.
.
 Как определить абсолютные координаты выбираемой ячейки?
Или это нереально?


 
clickmaker ©   (2006-08-18 09:59) [1]

ну нереального ничего нет )
цвет выделенной ячейки отличается от цвета всего грида? Тогда вперед - GetDC, GetPixel() в цикле


 
igornov   (2006-08-18 10:25) [2]


> цвет выделенной ячейки отличается от цвета всего грида?


отличается конечно


> Тогда вперед - GetDC, GetPixel() в цикле


GetDC возвращает (как я понял) хендл текущей области ввода в форме

В функцию передавать хендл окна с гридом или хендл грида?

а что мне даст GetPixel? Вернёт значение если я попал в область или CLR_INVALID...но с чего начинать перебор координат?


 
clickmaker ©   (2006-08-18 10:34) [3]


> GetDC возвращает (как я понял) хендл текущей области ввода
> в форме

GetDC возвращает контекст отображения окна. Для рисования или считывания цвета.

> с чего начинать перебор координат?

а что значит "добавить под текущей ячейкой (в фокусе) некоторую информацию для пользователя"? Занести в ячейку?


 
igornov   (2006-08-18 10:47) [4]


> а что значит "добавить под текущей ячейкой (в фокусе) некоторую
> информацию для пользователя"? Занести в ячейку?


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


 
clickmaker ©   (2006-08-18 11:59) [5]


> есть интересуют только координаты выбранной ячейки

т.е. содержимое даже не интересно?
ну тогда берешь контекст GetWindowDC(GridHandle) и в цикле от 0 до Grid.Width / Height и как только GetPixel станет равным цвету выделения, значит нашел


 
igornov   (2006-08-21 10:45) [6]


> как только GetPixel станет равным цвету выделения, значит
> нашел


Как мне определиться какой цвет искать (в цифровом выражении)? Как сопоставить этот искомый цвет со значениями которые возвращает GetPixel?


 
igornov   (2006-08-21 13:33) [7]

clickmaker спасибо!

Разобрался... всё работает!!!


 
GrayFace ©   (2006-08-25 22:12) [8]

clickmaker ©   (18.08.06 9:59) [1]
Тогда вперед - GetDC, GetPixel() в цикле

Ну хотябы CopyRect и Bitmap.Scanline.



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

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

Наверх




Память: 0.48 MB
Время: 0.054 c
15-1166165881
Sens
2006-12-15 09:58
2007.01.07
Нужна функция проверки правильности номера ЖД вагона.


9-1141459817
NightLord
2006-03-04 11:10
2007.01.07
PlugInIntf из GLScene


15-1166453613
Cyrax
2006-12-18 17:53
2007.01.07
С каких слов начинается текст справки...


2-1166288517
Viper_Omsk
2006-12-16 20:01
2007.01.07
Процедура при нажатии на "крест"


1-1163592392
DelphiLexx
2006-11-15 15:06
2007.01.07
Объединить колонки DBGridEh a определенной записи