tavria2
Advanced Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору vistadimix Для динамического изменения режима отображения картинок в IE - необходим его перезапуск, т.к. IE читает значения параметров из реестра только при запуске. Web-объект так-же, как и IE получает значения параметров только при запуске проекта, значит остается только одно - динамически создавать новый Web-объект. Например: Добавляем на страницу проекта кнопку "Button1" с фиксированным нажатием (нажатое состояние - отображать картинки, отжатое состояние - не отображать) и Web-объект "Web1". В событии On Preload страницы: Код: -- получаем значение из реестра cRegValue = Registry.GetValue(HKEY_CURRENT_USER, "Software\\Microsoft\\Internet Explorer\\Main", "Display Inline Images", true); if (cRegValue == String.Lower("no") or cRegValue == "0") then -- если запрещено отображать картинки Button.SetState("Button1", BTN_UP); -- устанавливаем кнопку в отжатое состояние else -- если разрешено отображать картинки Button.SetState("Button1", BTN_DOWN); -- устанавливаем кнопку в нажатое состояние end | В событии Click кнопки Button1: Код: -- ф-ция пересоздает web-объект function CloneWebObject() cName = "Web1"; -- имя Web-объекта tProp = Web.GetProperties(cName); -- св-ва Web-объекта cScriptNavigate = Page.GetObjectScript(cName, "On Navigate"); -- скрипт события "On Navigate" cScriptLoaded = Page.GetObjectScript(cName, "On Loaded"); -- скрипт события "On Loaded" cUrl = Web.GetURL(cName); -- получаем текущий URL из Web-объекта Page.DeleteObject(cName); -- удаляем Web-объект Page.CreateObject(OBJECT_WEB, cName, tProp); -- создаем новый Web-объект Page.SetObjectScript(cName, "On Navigate", cScriptNavigate); -- скрипт в событие "On Navigate" Page.SetObjectScript(cName, "On Loaded", cScriptNavigate); -- скрипт в событие "On Loaded" Web.LoadURL(cName, cUrl); -- загружаем URL в Web-объект end if (Button.GetState(this) == BTN_UP) then -- если кнопка отжата (режим без картинок) -- запрещаем картинки через реестр Registry.SetValue(HKEY_CURRENT_USER, "Software\\Microsoft\\Internet Explorer\\Main", "Display Inline Images", "0", REG_SZ); CloneWebObject(); -- пересоздаем Web-объект else -- если кнопка нажата (режим с картинками) -- разрешаем картинки через реестр Registry.SetValue(HKEY_CURRENT_USER, "Software\\Microsoft\\Internet Explorer\\Main", "Display Inline Images", "1", REG_SZ); CloneWebObject(); -- пересоздаем Web-объект end | StarDima Цитата: tbPageProperties.BackgroundType = 0; 2ALL Разработчики AMS забыли добавить константы , используемые в Application.GetPageProperties и Application.SetPageProperties: BG_GRADIENT = 1 BG_IMAGE = 2 BG_IMG_FITPAGE = 0 BG_IMAGE_TILE = 1 BG_IMAGE_ACTUALSIZE = 2 Можете добавить их самостоятельно в "C:\Program Files\AutoPlay Media Studio 7.0\Data\_constants.xml" или используйте вместо констант - их значение, например вместо BackgroundType = BG_IMAGE; - используйте BackgroundType = 2; | Всего записей: 1127 | Зарегистр. 19-01-2005 | Отправлено: 22:57 25-12-2007 | Исправлено: tavria2, 00:19 26-12-2007 |
|