Вниз
Скачать: CL | DM;

Прокрутка веб-страницы   Найти похожие ветки 

← →
dmitry1208197320 ©   (2009-10-02 12:19) [0]

Пытаюсь реализовать функцию создания скриншотов длинных веб-страниц.
Для этого, первым шагом надо автоматически прокрутить окно бразуера
(IE, FireFox, Opera). Алгоритм описан ниже. Он работает на IE, но не
работает на FF 3.5. Подскажите, что я делаю не так?

Алгоритм:
1. Узнаю дескриптор открытой в браузере веб-страницы.
2. Для прокрутки страницы посылаю ей сообщение SendMessage(h, WM_VSCROLL, SB_PAGEDOWN, 0). Окно нормально прокручивается.
3. Пытаюсь узнать, на сколько прокрутилось окно - это необходимо,
чтобы знать, надо ли прокручивать окно ещё и сколько раз. Если
веб-страница открыта в браузере типа FireFox 3.5, то не получается
узнать текущую позицию скроллера. Для получение информации о
текущей позиции скроллера использую функции API: GetScrollInfo,
GetScrollPos или посылаю окну сообщения  типа SendMessage(h,
SBM_GETPOS, 0, 0) или SendMessage(h, SBM_GETSCROLLINFO, 0, 0).
Если же веб-страница открыта в стандартном IE 5.0, то всё
нормально. Со стандартным окном Windows с папками и файлами тоже всё получается.


← →
clickmaker ©   (2009-10-02 13:47) [1]

а какому окну мозиллы шлешь сообщение?


← →
clickmaker ©   (2009-10-02 13:50) [2]

я к тому, что оно может не иметь стиля ws_vscroll, а само рисует скроллбар


← →
sniknik ©   (2009-10-02 13:56) [3]

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


← →
dmitry1208197320 ©   (2009-10-05 17:59) [4]

Что же мне делать в этом случае?


← →
TIF ©   (2009-10-05 20:56) [5]

А программно нажать в окне браузера клавиши [ ↑ ] [ ↓ ], [Page Up] [Page Down] - это случайно делу не поможет? Точность, конечно, будет так себе...



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.004 c
15-1297253986
Доменик
2011-02-09 15:19
2011.05.22
Web разработка


2-1297847287
RWolf
2011-02-16 12:08
2011.05.22
AV в API callback


2-1297759890
Scott Storch
2011-02-15 11:51
2011.05.22
как обойти ограничение в 2 Гб. для стримов?


6-1236800865
Дмитрий Белькевич
2009-03-11 22:47
2011.05.22
Не меняется порт в TIdSyslogServer (или скорее TIdUDPServer)


15-1296854977
Юрий
2011-02-05 00:29
2011.05.22
С днем рождения ! 5 февраля 2011 суббота




   Наверх