|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
01.01.2007, 06:25 | #1 |
Пользователь
Регистрация: 30.11.2006
Сообщений: 11
|
Свои значения для Window.Screen в DOM
Мне нужно задать свои значения переменным window.screen.availHeight, window.screen.availWidth, window.screen.width, window.screen.height, window.screen.colorDepth.
Они используются скриптом JavaScript на Web странице. Страницу эту я буду открывать в TWebBrowser (если это имеет значение). Не знаю с чего здесь начать: то ли с реестра, то ли как-то непосредственно на объктную модель DOM влиять. Если эти значения каждый раз считываются из реестра при загрузке браузера, то задача бы облегчилась, но этого я пока не выяснил. Подскажите, пожалуйста, кто-нибудь где рыть. Может системные переменные перехватывать нужно? |
01.01.2007, 13:22 | #2 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Megabotan, в Delphi параметры класса TScreen доступны только для чтения, как ты собираешься их менять?
|
01.01.2007, 17:42 | #3 |
Пользователь
Регистрация: 30.11.2006
Сообщений: 11
|
Класс TScreen тут вообще не причём. Мне надо было точнее выражаться.
Меня интересует как создаются свойства window.screen в модели DOM, которая используется в браузерах (меня интересует здесь IE). Это переменные JavaScript, а НЕ Delphi. Само собой, что все подобные параметры доступны только для чтения. Я же хочу найти способ, как бы так с помощью Delphi их изменить для JavaScript'а. То ли в реестр лезть перед загрузкой браузера, то ли что... Может кто-нибудь знает в подробностях, как устроена браузерная модель DOM? Или просто откуда берутся значения экранных переменных... |
01.01.2007, 23:53 | #4 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Понятно. надо мануалы по браузерам читать... Я ничем помочь не смогу.
|
02.01.2007, 15:31 | #5 |
Регистрация: 24.12.2006
Сообщений: 4
|
Я пытался что-нибудь в MSDN об объектной модели DOM найти, но толком ничего интересного. Только Internet Explorer Developer Toolbar скачал, но там переменные этой модели можно только просматривать или запрещать частично.
Может кто-нибудь знает как в неё попадают системные переменные (типа глубина цвета дисплея, экранное разрешение)? Я б хотел попробовать перехватить этот процесс... Вообще как любые окна узнают параметры дисплея? |
02.01.2007, 18:19 | #6 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
в Delphi есть стандартные процедуры и функции. знаешь их? если знаешь, то до api функций дойти не сложно будет...
|
03.01.2007, 16:41 | #7 |
Пользователь
Регистрация: 30.11.2006
Сообщений: 11
|
Я знаю, что есть api функция setdisplaysetting, которая устанавливает параметры дисплея. Знаю, что если у неё первый параметр будет ноль, то данные заноситься в реестр не будут, но параметры дисплея все равно меняться будут по настоящему. А IE переменные дисплея, как я убедился, не из реестра берёт.
Вообщем мне надо узнать способ как заставить одно какое-либо окно (или компанент) думать, что в системе на данный момент установлены такие-то параметры дисплея. Вероятно ф-ция setdisplaysetting посылает всем окнам сообщения, которые заставляют их подстраивать свои параметры под новые параметры дисплея. Надо бы мне подумать как подобное сообщение симулировать, возможно с помощью api ф-ции sendmessage. Судя по всему надо так: sendmessage(Form1.Webbrowser1.Handl e, wm_DevModeChange, 0, <устройство видеовывода>). Но только как сюда запихнуть мнимые параметры дисплея? И каков должен быть четвёртый параметр вместо <устройство видеовывода>? И ещё. Похоже на ответную реакцию WebBrowser нужно ставить Hook, а я с этим никогда не сталкивался. Хотелось бы, чтобы кто-нибудь подсказал как это делается. |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Immediate Window | ZORRO2005 | Microsoft Office Excel | 1 | 24.05.2008 16:23 |
Full screen | RealSHELS | Gamedev - cоздание игр: Unity, OpenGL, DirectX | 16 | 05.05.2008 11:37 |
про window | LuMax | Помощь студентам | 4 | 28.12.2007 15:44 |
Screen Saver на Паскале | Акашаев Нурлан | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 28.07.2007 21:36 |