RECT (Видимый) и IHTMLElement
От: Nif  
Дата: 14.02.06 16:19
Оценка:
Вообщем столкнулся с проблемой: зная IHTMLElement нужно полчуить его видимый RECT. Как быть?

Щас делаю так:
1) получаю для элемента offsetLeft, offsetTop, offsetHeight, offsetWidth
2) потом сканирую
el:=element.offsetParent;
while (el<>nil) do begin
xLeft:=xLeft+el.offsetLeft;
xTop:=xTop+el.offsetTop;
el:=el.offsetParent;
end;
Нахожу смещение его ректа относительно начала документа.

и вот тут самое интересное:

1) Почему то всегда получаеться что у Rect'a Left and Top меньше на 1-2 пикселя. Что я не учел?
2) как быть если элемент виден не весь? как получить видимую часть?
3) как быть если страницу проскролили? Ведь смещение идет от начало документа но так как документ проскролен то видимое начало не есть начало документа

Очень нужна помощь. Зарание благодарен.
Re: RECT (Видимый) и IHTMLElement
От: Аноним  
Дата: 15.02.06 09:11
Оценка:
Здравствуйте, Nif, Вы писали:

посмотрите в сторону

IHTMLTextRangeMetrics
IHTMLTextRangeMetrics2

WBR,
Pavel


Nif>Вообщем столкнулся с проблемой: зная IHTMLElement нужно полчуить его видимый RECT. Как быть?


Nif>Щас делаю так:

Nif>1) получаю для элемента offsetLeft, offsetTop, offsetHeight, offsetWidth
Nif>2) потом сканирую
Nif> el:=element.offsetParent;
Nif> while (el<>nil) do begin
Nif> xLeft:=xLeft+el.offsetLeft;
Nif> xTop:=xTop+el.offsetTop;
Nif> el:=el.offsetParent;
Nif> end;
Nif> Нахожу смещение его ректа относительно начала документа.

Nif>и вот тут самое интересное:


Nif>1) Почему то всегда получаеться что у Rect'a Left and Top меньше на 1-2 пикселя. Что я не учел?

Nif>2) как быть если элемент виден не весь? как получить видимую часть?
Nif>3) как быть если страницу проскролили? Ведь смещение идет от начало документа но так как документ проскролен то видимое начало не есть начало документа

Nif>Очень нужна помощь. Зарание благодарен.
Re[2]: RECT (Видимый) и IHTMLElement
От: Nif  
Дата: 15.02.06 09:48
Оценка:
А>Здравствуйте, Nif, Вы писали:

А>посмотрите в сторону


А>IHTMLTextRangeMetrics

А>IHTMLTextRangeMetrics2

А>WBR,

А>Pavel

Спасибо. Сегодня вечером буду копать в эту сторону.
Re[2]: RECT (Видимый) и IHTMLElement
От: Nif  
Дата: 15.02.06 10:11
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Nif, Вы писали:


А>посмотрите в сторону


А>IHTMLTextRangeMetrics

А>IHTMLTextRangeMetrics2

А>WBR,

А>Pavel

Кто нибудеь может что-то еще подсказать/помочь? Бо чувтсвую информации мало для решения проблемы.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.