Display package пакет отображения


Содержание

Sims 3 Dashboard (Проверка и исправление файлов .package)

Программа для выявления и исправления «проблемного» контента в формате .package.
Исправляет файлы .package, вызывающие проблему «синих квадратов».

Для работы требуется Microsoft .Net Framework 2.0.
Установка: не требуется.
Извлеките файлы из архива в отдельную папку (в любое удобное место на вашем компьютере)
Запустите програму — с иконки Sims3Dashboard.exe.

— Показывает установленную игру и аддоны, определяет их корневые папки, а так же есть ли у вас framework (файл d3dx9_31.dll, необходимый для работы некоторых модов)
— Показывает все файлы кеша и позволяет легко их очистить.
— Показывает весь установленный контент в формате .package, отображает поврежденные файлы, файлы от игры Sims 2 и те файлы, которые не будут работать в игре и дает возможность их исправить. Такие файлы выделяются соответственным цветом в списке.

Кнопка «Select» позволяет выделить:
— Corrupted (глючные поврежденныее файлы, выделяются красным)
— Duplicates (повторы, выделяются желтым)
— Conflicts (конфликты, выделяются оранжевым)
— Empty Files («пустые файлы»)
— Sims 2 Package (файлы Sims 2, выделяются синим)

Кнопка «Action»: доступные операции над выделенными файлами:
— Disable Packages — «отключает» файл, добавляя расширение .disabled)
— Fix Corrupted TXTCs — исправляет файлы.
— Delete Packages — удаляет файлы.

Программа S3PackageViewer

S3PackageViewer — просмотрщик превью форматов package и sims3pack. Полезная утилита, которая генерирует на основе превьюшек html страницы по шаблонам для package и sims3pack, а также дает возможность устанавливать и удалять моды.

Возможности:

  • извлечение и отображение информации из CasPart (одежда, украшения, макияж и т.п.);
  • извлечение и отображение информации из CRAL (Catalog Railing — перила);
  • извлечение и отображение информации из CFIR (Catalog Fireplace — камины);
  • установка и удаление всех файлов sims3pack и package из выбранной папки;
  • извлечение и отображение информации из SIMO (Sims Outfit Definition);
  • установка и удаление файлов sims3pack, как целиком так и отдельных входящих в него package;
  • извлечение и отображение информации из CWAL (Catalog Wall/Floor Pattern — покрытия пола/стен/потолка);
  • извлечение и отображение информации из CFEN (Catalog Fence — ограды);
  • извлечение и отображение информации из CRMT (Catalog Roof Pattern — покрытия крыши);
  • редактирование флагов CAS Part установленных объектов «на лету»;
  • установка и удаление файлов sims3pack и package из архивов RAR, Zip, 7-zip;
  • просмотр package (в том числе с шифрованными заголовками) и sims3pack;
  • извлечение и отображение информации из CSTR (Catalog Stairs — лестницы);
  • установка и удаление файлов package в формате (DBPF v.2 и DBPP);
  • извлечение и отображение информации из LDES (Lot Description — описание участка);
  • извлечение и отображение информации из ObjDef (объекты для продажи, большинство объектов для строительства);

DISPLAY PACKAGE

Англо-русский перевод DISPLAY PACKAGE

торг. демонстрационная упаковка а)(для размещения товара непосредственно в торговом зале) Eventually they succeeded in developing most convenient display package for all models of watches of last output. — В итоге им удалось разработать наиболее удобную демонстрационную упаковку для всех моделей часов последнего выпуска. б) (позволяет покупателю увидеть товар в случаях, когда он продается только в запечатанном виде) Display package of perfume is necessary to show to the customer the inside of the box and the bottle. — Демонстрационный образец духов необходим, чтобы показать покупателю внутреннюю сторону коробки и флакон. See: package 2) product display

Экономическая школа. New English-Russian explanatory dictionary of marketing and trade. Новый Англо-Русский толковый словарь по маркетингу и торговле . 2005

Еще значения слова и перевод DISPLAY PACKAGE с английского на русский язык в англо-русских словарях и с русского на английский язык в русско-английских словарях.

More meanings of this word and English-Russian, Russian-English translations for the word «DISPLAY PACKAGE» in dictionaries.

  • PACKAGE — I. ˈpakij, -kēj noun ( -s ) Usage: often attributive Etymology: probably from Dutch pakkage, from pak pack (from Middle …
    Webster’s New International English Dictionary
  • DISPLAY — I. də̇ˈsplā sometimes ˈdiˌs- verb ( -ed/-ing/-s ) Etymology: Middle English displayen, from Anglo-French despleier, from Latin displicare to scatter, …
    Webster’s New International English Dictionary
  • PACKAGE — — packageable , adj. /pak»ij/ , n. , v. , packaged, packaging . n. 1. a bundle of something, usually …
    Random House Webster’s Unabridged English Dictionary
  • DISPLAY — — displayer , n. /di splay»/ , v.t. 1. to show or exhibit; make visible: to display a sign. 2. …
    Random House Webster’s Unabridged English Dictionary
  • DISPLAY — I. di-ˈsplā verb Etymology: Middle English, from Anglo-French desplaier, desploier, literally, to unfold — more at deploy Date: 14th century …
    Merriam-Webster’s Collegiate English vocabulary
  • DISPLAY — vt to make conspicuous by large or prominent type. 2. display ·noun ostentatious show; exhibition for effect; parade. 3. display …
    Webster English vocab
  • PACKAGE — / ˈpækɪdʒ; NAmE / noun , verb ■ noun 1. ( especially NAmE ) = parcel : A large package …
    Oxford Advanced Learner’s English Dictionary
  • DISPLAY — / dɪˈspleɪ; NAmE / verb , noun ■ verb

sth (to sb) 1. [ vn ] to put sth …
Oxford Advanced Learner’s English Dictionary

  • PACKAGE — I. pack ‧ age 1 S2 W2 /ˈpækɪdʒ/ BrE AmE noun [countable] [ Word Family: noun : ↑ pack , …
    Longman Dictionary of Contemporary English
  • DISPLAY — I. di ‧ splay 1 S3 W2 AC /dɪˈspleɪ/ BrE AmE noun [countable] 1 . OBJECTS an arrangement of things …
    Longman Dictionary of Contemporary English
  • PACKAGE — ( packages, packaging, packaged) Frequency: The word is one of the 1500 most common words in English. 1. A package …
    Collins COBUILD Advanced Learner’s English Dictionary
  • DISPLAY — ( displays, displaying, displayed) Frequency: The word is one of the 1500 most common words in English. 1. If you …
    Collins COBUILD Advanced Learner’s English Dictionary
  • PACKAGE — I. noun COLLOCATIONS FROM OTHER ENTRIES a package hol > Longman DOCE5 Extras English vocabulary
  • DISPLAY — I. noun COLLOCATIONS FROM OTHER ENTRIES a display/expression of emotion (= an emotion that is shown clearly openly ) ▪ …
    Longman DOCE5 Extras English vocabulary
  • PACKAGE — I. noun 1 ( esp. AmE ) something wrapped in paper, etc. ⇨ See also ↑ parcel ADJECTIVE ▪ big …
    Oxford Collocations English Dictionary
  • DISPLAY — I. noun 1 arrangement of things ADJECTIVE ▪ attractive , beautiful , colourful/colorful , dazzling , excellent , fine , …
    Oxford Collocations English Dictionary
  • PACKAGE — 1. сущ. 1) некоторое количество вещей, упакованных в какое-л. вместилище, особ. небольшого размера, или просто перевязанных : а) пакет, сверток; …
    Большой Англо-Русский словарь
  • DISPLAY — 1. сущ. 1) показ, проявление, демонстрация an occasion for the display of his powers ≈ возможность демонстрации своей силы Syn …
    Большой Англо-Русский словарь
  • PACKAGE — package.ogg 1. ʹpækıdʒ n 1. тюк; кипа; место ( багажа ) 2. пакет, свёрток 3. упаковочная тара, контейнер, ящик, коробка …
    Англо-Русско-Английский словарь общей лексики — Сборник из лучших словарей
  • DISPLAY — display.ogg 1. dısʹpleı n 1. 1> показ, демонстрация military display, display of troops — военный парад fashion display — демонстрация …
    Англо-Русско-Английский словарь общей лексики — Сборник из лучших словарей
  • PACKAGE — 1) упаковка ( средство для защиты продукта от повреждений и потерь ) 2) тара 3) упаковывание || упаковывать 4) пачка; …
    Большой Англо-Русский политехнический словарь
  • DISPLAY — 1) визуальное воспроизведение, визуальное представление; отображение ( информации ) ; индикация || воспроизводить; отображать 2) изображение || изображать 3) воспроизводящее …
    Большой Англо-Русский политехнический словарь
  • PACKAGE — 1) упаковка (средство для защиты продукта от повреждений и потерь) 2) тара 3) упаковывание || упаковывать 4) пачка; пакет 5) блок; узел; модуль; сборка 6) …
    Большой Англо-Русский политехнический словарь — РУССО
  • DISPLAY — 1) визуальное воспроизведение, визуальное представление; отображение (информации); индикация || воспроизводить; отображать 2) изображение || изображать 3) воспроизводящее устройство; видеотерминал; устройство отображения (информации), …
    Большой Англо-Русский политехнический словарь — РУССО
  • PACKAGE — 1) блок 2) затаривать 3) кассета 4) компактное устройство 5) комплект 6) корпус ИМС 7) корпус полупроводникового прибора 8) посылка 9) стандартный блок 10) тара 11) тюк 12) упаковать 13) упаковка 14) упаковывать • application-specific …
    Англо-Русский научно-технический словарь
  • DISPLAY — 1) воспроизведение; показ, демонстрация; проявление 2) дисплей; экран дисплея 3) изображение 4) индикация; показания 5) обнаруживать; показывать; проявлять • — generalized display — information display — LED display — …
    Англо-Русский научно-технический словарь
  • PACKAGE — package сущ.1) некоторое количество вещей, упакованных в какое-л. вместилище, особ. небольшого размера, или просто перевязанных: а) пакет, сверток; пачка (сигарет) …
    Англо-Русский словарь Tiger
  • DISPLAY — display сущ.1) показ, проявление, демонстрация an occasion for the display of his powers — возможность демонстрации своей силы Syn:demonstration, showing, …
    Англо-Русский словарь Tiger
  • PACKAGE — 1. ʹpækıdʒ n 1. тюк; кипа; место ( багажа ) 2. пакет, свёрток 3. упаковочная тара, контейнер, ящик, коробка milk …
    Большой новый Англо-Русский словарь
  • DISPLAY — 1. dısʹpleı n 1. 1> показ, демонстрация military display, display of troops — военный парад fashion display — демонстрация мод …
    Большой новый Англо-Русский словарь
  • PACKAGE — 1. сущ. 1) некоторое количество вещей, упакованных в какое-л. вместилище, особ. небольшого размера, или просто перевязанных: а) пакет, сверток; пачка …
    Англо-Русский словарь по общей лексике
  • DISPLAY — 1. сущ. 1) показ, проявление, демонстрация an occasion for the display of his powers — возможность демонстрации своей силы Syn: …
    Англо-Русский словарь по общей лексике
  • PACKAGE — 1. сущ. 1) некоторое количество вещей, упакованных в какое-л. вместилище, особ. небольшого размера, или просто перевязанных: а) пакет, сверток; пачка (сигарет) Syn: parcel, packet б) …
    Англо-Русский словарь общей лексики
  • DISPLAY — 1. сущ. 1) показ, проявление, демонстрация an occasion for the display of his powers — возможность демонстрации своей силы Syn: demonstration, showing, exhibition, manifestation, …
    Англо-Русский словарь общей лексики
  • PACKAGE — 1) узел; агрегат; блок; модуль 2) набор, комплект 3) упаковка 4) тара; контейнер 5) пакет программ; программное обеспечение 6) совокупность …
    Англо-Русский словарь по машиностроению и автоматизации производства 2
  • DISPLAY — 1) дисплей || дисплейный ( напр. о пульте ) 2) устройство индикации, устройство цифровой индикации; устройство отображения, устройство отображения информации; …
    Англо-Русский словарь по машиностроению и автоматизации производства 2
  • PACKAGE — 1) узел; агрегат; блок; модуль 2) набор, комплект 3) упаковка 4) тара; контейнер 5) пакет программ; программное обеспечение 6) совокупность • — 2D geometry programming package — 3D …
    Англо-Русский словарь по машиностроению и автоматизации производства
  • DISPLAY — 1) дисплей || дисплейный (напр. о пульте) 2) устройство индикации, устройство цифровой индикации; устройство отображения, устройство отображения информации; электронное табло 3) отображение, …
    Англо-Русский словарь по машиностроению и автоматизации производства
  • DISPLAY — 1) проявление (напр. признака) 2) демонстрация, демонстрационное поведение; демонстрационная поза 3) демонстрационная окраска 4) орнит. ток(ование) 5) физиол. развёртка • — bared-teeth display — broadside display — courtship …
    Новый Англо-Русский словарь по биологии
  • DISPLAY — 1) проявление ( напр. признака ) 2) демонстрация, демонстрационное поведение; демонстрационная поза 3) демонстрационная окраска 4) орнит. ток(ование) 5) физиол. …
    Новый Англо-Русский биологический словарь
  • PACKAGE — 1. _n. 1> тюк; кипа; посылка; место (багажа) 2> пакет, сверток; пачка (сигарет); I tore open the package 3> упаковка, …
    Англо-Русский словарь Мюллера — 24 редакция
  • PACKAGE — 1. n. 1. тюк; кипа; посылка; место (багажа) 2. пакет, сверток; пачка (сигарет); I tore open the package 3. упаковка, …
    Англо-Русский словарь Мюллера — редакция bed
  • PACKAGE — 1) тара для упаковки, контейнер, ящик 2) упаковка 3) ком. расходы по упаковке груза 4) набивка, уплотнение 5) укладывать в контейнер, ящик, упаковывать • — airproof …
    Англо-Русский словарь по строительству и новым строительным технологиям

  • DISPLAY — сейсм. 1. дисплей 2. визуальное представление данных — amplitude display — count-rate display — display of seismic information — migrated display — record-section display — seismic …
    Большой Англо-Русский словарь по нефти и газу
  • PACKAGE — сущ. 1) тюк 2) кипа 3) упаковка 4) расходы по упаковке 5) пошлина с товарных тюков 6) соглашение по нескольким вопросам, заключенное на основе взаимных уступок 7) …
    Англо-Русский словарь по экономике
  • DISPLAY — 1. сущ. 1) показ, демонстрация 2) выставка • — cutcase display — display goods — display of loyalty — display of power — display racks — eye-catching display — full-case …
    Англо-Русский словарь по экономике
  • PACKAGE — 1) пакет а) модуль в языке Ada, обеспечивающий инкапсуляцию (encapsulation) б) в Java — группа классов, объявленных с ключевым словом package, являющаяся …
    Англо-Русский словарь по вычислительной технике и программированию
  • DISPLAY — 1) дисплей 2) устройство отображения; устройство индикации, индикатор; электронное табло 3) отображение (данных); индикация || отображать (данные); выводить (данные) на экран; индицировать 4) …
    Англо-Русский словарь по вычислительной технике и программированию
  • PACKAGE — 1) тюк; кипа; место (груза, багажа) ; пакет; пачка; упаковка 2) пошлина с товарных тюков 3) расходы на упаковку 4) …
    Англо-Русский словарь по экономике и финансам
  • DISPLAY — выставка (товара) ; показ [c crimson]|| выставлять; показывать — rearrange the display — refill the display — cutcase display — …
    Англо-Русский словарь по экономике и финансам
  • DISPLAY — 1) видеотерминал, дисплей, монитор 2) табло, индикатор 3) отображение • — active display — all-digital display — alphanumeric display — alphaphotographic display — amber display — call display — cathode-ray …
    Англо-Русский словарь по телекоммуникациям
  • PACKAGE — 1) кипа; пачка 2) тара; коробка; контейнер 3) упаковка [c crimson]|| упаковывать 4) блок; узел; модуль 5) пакет программ 6) …
    Англо-Русский словарь по полиграфии и издательскому делу
  • DISPLAY — 1) дисплей, воспроизводящее устройство, видеотерминал [c crimson]|| воспроизводить, отображать, высвечивать на экране 2) экран дисплея 3) выставка, показ, демонстрация; рекламный …
    Англо-Русский словарь по полиграфии и издательскому делу
  • PACKAGE — package n 1. infml She made quite a package on that bank deal На этой банковской операции она заработала большую …
    Англо-Русский новый словарь современного неформального английского языка
  • PACKAGE — 1) агрегат; блок; узел 2) комплект 3) уплотняющий элемент • — aerodynamics package — cleaner air package — cooling package — filtration package — maintenance package — noise suppression …
    Англо-Русский автомобильный словарь — Руссо
  • PACKAGE — тара ; упаковка ; расходы по упаковке ; группа ; партия ; комплекс ;

    package …
    Англо-Русский Деловой словарь

  • DISPLAY — 1) показ; демонстрация; выставка; показывать; выставлять 2) устройство отображения, дисплей; индикатор; отображение, вывод (данных); отображать, выводить (данные напр. на экран) 3) выделение …
    Англо-Русский словарь по патентам и товарным знакам
  • PACKAGE — 1) общ. пакет, сверток 2) торг., амер. упаковка, контейнер, тара (емкость из картона, бумаги, фольги, пластмассы, дерева, металла или иного упаковочного …
    Новый Англо-Русский толковый словарь по маркетингу и торговле
  • DISPLAY — I сущ. 1) общ. показ, демонстрация fashion display — демонстрация (показ) мод See: 2) марк. презентация, показ; выставка, выкладка, экспозиция (рекламных материалов и товаров в …
    Новый Англо-Русский толковый словарь по маркетингу и торговле
  • PACKAGE — блок; модуль корпус пакет (программ) см. access control package см. add-on package см. chip-based encryption package см. data encryption package …
    Англо-Русский словарь компьютерной безопасности
  • PACKAGE — 1. сущ. 1) некоторое количество вещей, упакованных в какое-л. вместилище, особ. небольшого размера, или просто перевязанных : а) пакет, сверток; …
    Новый большой Англо-Русский словарь
  • DISPLAY — 1. сущ. 1) показ, проявление, демонстрация an occasion for the display of his powers ≈ возможность демонстрации своей силы Syn …
    Новый большой Англо-Русский словарь
  • Адаптация под различные экраны приложений Windows Store

    Заметил, что у разработчиков возникает множество вопросов по поводу адаптации приложения под экраны различного размера. Для того чтобы была возможность предоставить ссылку, по которой есть необходимая информация, я и решил написать этот небольшой материал. Рассматривать буду не только приложения под Windows 8.1, будет затронута и разработка приложений Windows 10 UWP.

    Ни для кого не является новостью то, что существует множество устройств с различными размерами и разрешениями экранов. Для устройства с небольшим экраном, но высоким разрешением необходимо изображение иного размера и качества, чем для устройств с большим экраном и тем же разрешением. Обусловлено это тем, что количество физических пикселей устройства не всегда совпадает с количеством реальных пикселей отображаемых системой/приложением.

    Коэффициент масштабирования — это соотношение реальных пикселей устройства и отображаемых. При расчете этого коэффициента учитывается также стандартная дистанция, с которой пользователи смотрят на экран устройства.
    В приложениях под Windows 8.1 поддерживается три коэффициента масштабирования: 100%, 140% и 180%. У Windows Phone 8.1 приложений различных коэффициентов масштабирования больше.
    В эмуляторе Windows Store приложений, при изменении разрешения экрана вы можете увидеть и само разрешение, и значение коэффициента масштабирования рядом.

    Процесс адаптации изображений похож на локализацию изображений. Для того, чтобы для различных разрешений брался верный вариант картинки необходимо внутри папки images создать 3 папки с именами: scale-100, scale-140, scale-180. Внутрь этих папок уже и добавляем изображения с одинаковыми названиями.

    Если вы собираетесь хранить все файлы в одной папке, то вам необходимо будет добавить файлам картинок постфикс с указанием коэффициента масштабирования.

    Соответственно, вам нужно будет создать 3 версии изображения. Если ваше стандартное изображение имеет 200 пикселей в ширину, то для масштабирования 140% нужно будет умножить ширину на 1,4. То есть вам нужно будет создать такое же изображение 280 пикселей в ширину. Ну и для масштабирования 180% нужно будет иметь такое же изображение шириной 200*1,8=360 пикселей.
    Во время выполнения приложения оптимальное изображение выбирается автоматически, в зависимости от того, какое разрешение экрана у пользователя.
    Если вы задаете файл изображения из кода, то вывести картинку верного разрешения вам может помочь следующий официальный сниппет, который исходя из значения DisplayInformation.GetForCurrentView().ResolutionScale определяет текущий коэффициент масштабирования экрана:

    Используя эти возможности масштабирования изображений можно создавать приложения с гибкими не фиксированными в пикселях макетами, например, используя Grid и указывая в качестве размеров ячеек пропорциональные значения — *.

    Адаптация макета приложения под размер экрана
    Если содержимое вашего приложения размещено в элементе-контейнере Viewbox, то при изменении размера экрана ваше содержимое будет автоматически растянуто и масштабировано с целью заполнить все доступное пространство. Для того, чтобы растровые изображения при таком увеличении выглядели прилично, необходимо добавить несколько вариантов различного размера, как мы это только что рассматривали.
    Размещение приложения внутри Viewbox – это один из предлагаемых вариантов адаптации приложения под различные экраны. Другим вариантом может быть скрытие элементов приложения или изменение их размеров. Рассмотрим работу с различными размерами приложения на примере режима snap.
    Стандартно приложение Windows 8.1 может быть минимум 500 пикселей в ширину. В случае, если ваше приложение хорошо будет выглядеть и при более узком виде, либо его вполне можно использовать с другими приложениями, а также если желательно оставлять его как можно дольше в рабочем положении – вы можете установить ему минимальной шириной 320 пикселей. Сделать это можно, указав в редакторе манифеста минимальную ширину 320 или добавив в код манифеста атрибут MinWidth со значением width320 (кстати, в Windows 8 приложениях режим snap был как раз 320 пикселей)

    Самым простым вариантом адаптировать приложение под различную ширину может быть императивная установка видимости/невидимости, а также ширины и высоты контролов в событии изменения размера экрана. Сделать это можно приблизительно так:

    Но так делать можно в небольших приложениях, в которых вам не будет трудно перебрать все существующие контролы в коде C#. Для нормальных приложений лучше всего изменения внешнего вида хранить в XAML VisualState состояниях. Таким образом, можно предоставить дизайнеру возможность комфортного изменения макета в Blend. Следующий пример содержит те же изменения, что и предыдущий код:

    Теперь в событии изменения размера окна мы можем перейти к нужному состоянию (в зависимости от текущего размера экрана):

    Здесь для получения размера экрана в ширину и высоту мы опять использовали параметр SizeChangedEventArgs e.
    В любой другой момент выполнения программы, ширину и высоту видимого окна приложения (так называемые эффективные пиксели, которые не зависят от размера экрана устройства) можно получить так:
    Кроме эффективных пикселей есть еще и raw пиксели (англ. raw — сырой, необработанный) – реальное количество точек на экране или физические пиксели. Например, если экран устройства 1080 пикселей в ширину, то и количество raw пикселей будет 1080 по горизонтали.

    Для получения физического размера окна приложения в дюймах (если по каким-то причинам вам вдруг понадобилась эта информация), вы можете использовать следующий трюк:

    Что по поводу приложений универсальной платформы Windows?

    Универсальные приложения Windows 8.1 уже предоставляли нам возможность сделать свою отдельную XAML раскладку для WP и для Store. На следующем скриншоте два MainPage.xaml файла:

    В приложениях UWP нам будет доступна возможность создать множество XAML файлов с представлениями внешнего вида приложения и выбрать нужный из них, в зависимости от различных факторов (размер экрана, разрешение и т.п.). Давайте попробуем.
    Создадим в проекте директорию DeviceFamily-Mobile.
    Кликнем на ней правой кнопкой мыши и выберем пункт Add new item
    Из вариантов нам нужно выбрать XAML View и назвать наше представление так же, как и называется то представление, которое мы хотим заменить. В простом случае это может быть MainPage.xaml.
    Теперь тот XAML код, который мы внесем в файл MainPage.xaml, расположенный в папке DeviceFamily-Mobile будет отображен на мобильных устройствах. На десктопах же и иных устройствах будет отображен дизайн приложения из основного MainPage.

    RelativePanel
    Теперь нам стал доступен новый контрол RelativePanel, который позволяет создавать взаимосвязи положений между своими дочерними элементами.
    Например, следующий код:
    задает оранжевой кнопке положение под светло синей:

    AdaptiveTrigger
    Windows 10 приложения не только поддерживают VisualState состояния, но и расширяют их новым функционалом. Во первых, теперь стало можно использовать триггеры для UI. А во-вторых, VisualStateManager теперь поддерживает Setters. Теперь отпала необходимость создавать 0-секундную анимацию (даже более того – устарела). Благодаря этому код становится более читаемым. Сравните следующий пример с примером, который мы рассматривали ранее:

    Обратите внимание на строку Здесь задается значение минимальной ширины окна приложения, при котором сработает триггер. Далее с помощью Setters задается цвет для состояния. Весь этот код означает, что при изменении ширины приложения, в случае если ширина становится шире чем 600 пикселей цветом Layout становится зеленый.

    Замечательная статья (англоязычная), из которой я взял это пример находится здесь.

    Device preview toolbar
    В Windows 10 ожидается расширение возможностей масштабирования приложений. Уже сейчас вы можете протестировать отображение внешнего вида вашего XAML кода на различных устройствах, используя device preview toolbar:

    Обратите внимание на скриншот. Вы можете заметить, что Windows 10 приложения поддерживают гораздо больше коэффициентов масштабирования, чем приложения Windows 8.1. Вот табличка с презентации BUILD 2015, сравнивающая возможности масштабирования различных платформ:

    Как вы можете заметить Windows 10 приложения на высоте – они самые «скалистые».

    Что-то еще? Узнаем совсем скоро, ведь совсем не за горами 20-ое июля — дата релиза Visual Studio 2015, а там до 29-ого июля и выхода Windows 10 уже рукой подать.

    Форум The Sims : S3PackageViewer — просмотрщик превью в package и sims3pack — Форум The Sims

    S3PackageViewer — просмотрщик превью в package и sims3pack Небольшая утилита позволяет просмотреть файлы перед установкой в игру

    #1 Lusille

    • Просвещенный
    • Группа: VIP
    • Сообщений: 1 373
    • Регистрация: 27 Декабрь 10

    1.11
    — добавлено, отображение ряда флагов категории CASPart;
    — исправлено, «обернута» ошибка «невозможно записать файл report.htm»;
    — добавлено, редактор флагов CASPart для установленных объектов;
    — изменено, инсталятор теперь Inno Setup, язык интерфейса программы устанавливается в зависимости от выбранного при установке;
    — изменено, локализация интерфейса программы вынесена в \ARSoft\S3PackageViewer\UI ;
    — исправлено, команда «Выбрать в Проводнике» проверяет на открытие папки с файлом, если папка открыта то сдвигает выделение файла в ней;
    — исправлено, интерфейс в темах «Office2010» под Windows Seven;
    — исправлено, фиолетовый фон значков на статусе декодирования;
    — исправлено, при удалении программы не удалялся ярлык с рабочего столы;
    — изменено, нумерация версий программы (вторая цифра — подверсия, третья: «0» — релиз, «9» — тестовый билд);
    — изменено, настройки на панели настроек разнесены по вкладкам;
    — добавлено, команда контекстного меню «Печать в Файл (Ctrl+P)», скидывает область просмотра в виде JPEGа, параметры задаются через вкладку Настройки | Печать;

    Илон Маск рекомендует:  TList - Тип Delphi

    1.10
    — исправлено, флаг на верхнюю одежду выставлялся некорректно;
    — добавлено, тема отчета «Metro»;
    — изменено, фильтрация по CASPart разбита на два подфильтра: по категории и по полу/возрасту;
    — добавлено, команда контекстного меню «Выбрать в Проводнике»;
    — добавлено, тема интерфейса «Metro» (включение/выключение требует перезапуска программы);
    — исправлено, программа не запоминала последний путь, если просматривался файл, а не папка;
    — исправлено, записи с MemorySize=-1, при декодировании package помечаются как удаленные;
    — добавлено, посекционный перехват ошибок при декодировании OBJD и CASP;
    — исправлено, участки корректно устанавливаются и удаляются в/из <Мои_документы>\Electronic Arts\The Sims 3\Library;

    1.09
    — исправлено, увеличена высота элементов в дереве файлов (под Win7 выделение «залазило» на картинку);
    — изменено, интерфейс открытия/закрытия вкладок;
    — добавлено, поддержка аддона «Времена года» (EP8), OBJD Ver 1.08
    — исправлено, неверная фильтрация покрытий стен/пола/крыш;

    1.07
    — исправлено, вылет при инициализации или просмотре, если не установлено ни одного пользовательского объекта;


    1.06
    — добавлено, поддержка OBJD Ver=0x1C;
    — добавлено, поддержка отображения флагов дополнения «шоу-бизнес» (EP6);

    1.05
    — добавлено, перекрытие размеров превью заданных темами;
    — исправлено, при переключении вкладок путь в отдельных случаях не восстанавливался;
    — изменено, разблокирована обработка ошибок при работе инсталлятора;
    — изменено, включен скрипт-пакет 1.04D с исправлениями;
    — изменено, скрипты и CSS переписаны заново, т.к. в том виде как они были уже было не понять что куда;
    — исправлено, цвета в оформлении отчетов;
    — добавлено, две черно-белые темы отчетов;
    — исправлено, значок для USB Flash отображается теперь не в виде дискеты, а в виде съемного носителя;
    — добавлено, сортировка файлов в дереве по-алфавиту в сплошную или по группам, настраивается через «Настройки» или в ini [Common].SortByTypes=0/1;
    — добавлено, установка модов по подпапками, настраивается через «Настройки» или в ini через [Common].UseInstRules=0/1;
    — добавлено, поддержка ведения логов ошибок;
    — изменено, индикаторы прогресса и текущие счетчики перенесены в строку состояния;
    — добавлено, посекционный перехват исключений для файлов package и sims3pack;
    — добавлено, отображение дополнительных флагов для животных на категории CASPart;
    — добавлено, темы оформления Windows 7 и Office 2010;
    — добавлено, поддержка OBJD Ver=0x1B;
    AnriRS на форуме Добавить отзыв для AnriRS Пожаловаться на это сообщение Редактировать/удалить сообщение

    1.04
    — исправлено, для работы программы больше не требуются административные привилегии;
    — добавлено, в сообщениях об ошибках выводится имя сбойного файла;
    — исправлено, поток сбойного файла не освобождался, что не позволяло его удалить;

    1.03
    — исправлено, при просмотре папки с архивами установка/удаление модов работала не правильно;
    — исправлено, ошибка скрипта с английской локалью при просмотре CWAL;
    — исправлено, ряд текстов при просмотре был всегда по-русски независимо от локали;

    1.02
    — добавлено, поддержка аддона «Все возрасты» (EP4), OBJD ver=1Ah, флаг строительства на витые лестницы;
    — добавлено, поддержка просмотра и фильтр по записям типа 0xD063545B LDES Lot Description — участки

    1.01
    — исправлено, дескриптор архива не освобождался после просмотра из-за чего невозможно было удалить архив до выхода из программы;
    — исправлено, исключение при попытке просмотреть заблокированный файл корректно «обернуто»;
    — исправлено, апострофы и кавычки в сообщениях об исключительных ситуациях преобразуются в символ quot;
    — изменено, фильтрация перенесена в файл отчета;
    — исправлено, всплавающие подсказки могли перекрываться ватермарком;
    — исправлено, временная папка при просмотре архивов должна очищаться для каждого просмотреного архива;
    — добавлено, дерево файлов автоматически получает фокус при наведении «мыши».

    Сообщение отредактировал aVk: 25 Август 2013 — 18:07
    Причина редактирования обновление поста

    DisplayObject — AS3

    Классы x

    Пакет flash.display
    Класс public class DisplayObject
    Наследование DisplayObject EventDispatcher Object
    Реализует IBitmapDrawable
    Подклассы AVM1Movie, Bitmap, InteractiveObject, MorphShape, Shape, StaticText, Video
    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Класс DisplayObject является базовым классом для всех объектов, которые можно поместить в список отображения. Список отображения управляет всеми объектами, отображаемыми в средах выполнения Flash. Используйте класс DisplayObjectContainer, чтобы упорядочить экранные объекты в списке отображения. Объекты DisplayObjectContainer могут иметь дочерние экранные объекты, а другие экранные объекты, такие как Shape и TextField, являются конечными узлами, у которых есть только родительские элементы и элементы одного уровня, но нет дочерних.

    Класс DisplayObject поддерживает базовые функции, такие как положение объекта по осям x и y, а также некоторые расширенные свойства объекта, такие как матрица преобразования.

    DisplayObject — это абстрактный базовый класс, поэтому DisplayObject нельзя вызывать непосредственно. При вызове new DisplayObject() выдается исключение ArgumentError .

    Все экранные объекты наследуют свойства и методы класса DisplayObject.

    Сам класс DisplayObject не содержит API-интерфейсов для визуализации содержимого на экране По этой причине, если требуется создать пользовательский подкласс класса DisplayObject, нужно расширить один из его подклассов, в которых есть API-интерфейс для визуализации содержимого на экране, такие как классы Shape, Sprite, Bitmap, SimpleButton, TextField и MovieClip.

    Класс DisplayObject содержит несколько многоадресных событий. Как правило, целью любого конкретного события является конкретный экземпляр DisplayObject. Например, целью события added является конкретный экземпляр DisplayObject, который был добавлен в список отображения. Единственный целевой объект предотвращает добавление прослушивателей событий для этого объекта, а иногда и его предков, в список отображения. Однако для многоадресных событий целью является не конкретный объект DisplayObject, а все экземпляры DisplayObject, в том числе и те, что не включены в список отображения. Это значит, что вы можете добавить прослушиватель к любому экземпляру DisplayObject для прослушивания многоадресных событий. В дополнение к многоадресным событиям, перечисленным в таблице событий класса DisplayObject, класс DisplayObject наследует также два многоадресных события от класса EventDispatcher: activate и deactivate .

    Некоторые свойства, которые ранее использовались в ActionScript 1.0 и 2.0 в классах MovieClip, TextField и Button (такие как _alpha , _height , _name , _width , _x , _y и другие) имеют эквиваленты в классе DisplayObject ActionScript 3.0, но они переименованы и больше не начинаются с символа подчеркивания (_).

    Дополнительные сведения см. в главе «Программирование экрана» Руководства разработчика по ActionScript 3.0.

    Связанные элементы API

    Свойство Определено
    accessibilityProperties : AccessibilityProperties
    DisplayObject alpha : Number DisplayObject blendMode : String DisplayObject blendShader : Shader DisplayObject cacheAsBitmap : Boolean DisplayObject cacheAsBitmapMatrix : Matrix DisplayObject constructor : Object DisplayObject height : Number DisplayObject loaderInfo : LoaderInfo DisplayObject mask : DisplayObject DisplayObject metaData : Object DisplayObject mouseX : Number DisplayObject mouseY : Number DisplayObject name : String DisplayObject opaqueBackground : Object DisplayObject parent : DisplayObjectContainer DisplayObject root : DisplayObject DisplayObject rotation : Number DisplayObject rotationX : Number DisplayObject rotationY : Number DisplayObject rotationZ : Number DisplayObject scale9Gr > Текущая активная сетка масштабирования. DisplayObject scaleX : Number DisplayObject scaleY : Number DisplayObject scaleZ : Number DisplayObject scrollRect : Rectangle DisplayObject stage : Stage DisplayObject transform : flash.geom:Transform DisplayObject visible : Boolean DisplayObject w > Указывает ширину экранного объекта в пикселях. DisplayObject x : Number DisplayObject y : Number DisplayObject z : Number DisplayObject
    Метод Определено
    DisplayObject
    DisplayObject
    DisplayObject
    DisplayObject
    DisplayObject
    DisplayObject

    DisplayObject
    DisplayObject
    Событие Сводка Определено
    [многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR перемещается в фокус операционной системы и становится активным. EventDispatcher
    Отправляется, когда экранный объект добавляется в список отображения. DisplayObject
    Отправляется, когда экранный объект добавляется к списку отображения на монтажном столе либо непосредственно, либо путем добавления поддерева, содержащего экранный объект. DisplayObject
    [многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR теряет фокус системы и становится неактивным. EventDispatcher
    [многоадресное событие] Отправляется, когда точка воспроизведения переходит в новый кадр. DisplayObject
    [многоадресное событие] Отправляется, когда точка воспроизведения покидает текущий кадр. DisplayObject
    [многоадресное событие] Отправляется после завершения работы конструкторов экранных объектов кадра до выполнения сценариев кадра. DisplayObject
    Отправляется перед удалением экранного объекта из списка отображения. DisplayObject
    Отправляется перед удалением экранного объекта из списка отображения либо напрямую, либо путем удаления поддерева, содержащего экранный объект. DisplayObject
    [многоадресное событие] Отправляется перед обновлением и визуализацией списка отображения. DisplayObject

    accessibilityProperties

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9

    Текущие параметры специальных возможностей для данного экранного объекта. Если модифицируется свойство accessibilityProperties или любые поля в accessibilityProperties , необходимо вызвать метод Accessibility.updateProperties() , чтобы изменения вступили в силу.

    Примечание. Для объектов, созданных в среде разработки Flash, значение accessibilityProperties предварительно заполняется информацией, введенной на панели «Специальные возможности» данного объекта.

    Реализация
    public function get accessibilityProperties():AccessibilityProperties
    public function set accessibilityProperties(value:AccessibilityProperties):void

    Связанные элементы API

    alpha

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает значение альфа-прозрачности заданного объекта. Допустимые значения находятся в диапазоне 0 (полностью прозрачный) — 1 (полностью непрозрачный). Значением по умолчанию является 1. Экранные объекты, для которых значение alpha равно 0, являются активными, несмотря на невидимость.

    Реализация
    public function get alpha():Number
    public function set alpha(value:Number):void

    Пример ( Использование этого примера )

    blendMode

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9

    Значение класса BlendMode, задающее режим наложения. Растровое изображение может прорисовываться внутренними средствами двумя способами. Если включен режим наложения или внешняя маска обрезки, растровое изображение рисуется путем добавления квадрата, заполненного растровым изображением, к векторной визуализации. При попытке задать свойству недопустимое значение среда выполнения Flash использует значение BlendMode.NORMAL .

    Свойство blendMode влияет на каждый пиксель экранного объекта. Каждый пиксель состоит из трех основных цветов (красного, зеленого и синего) со значениями в пределах 0x00 — 0xFF. Проигрыватель Flash Player или Adobe AIR сравнивает каждый цвет, составляющий один пиксель, во фрагменте ролика с соответствующим цветом пикселя фона. Например, если blendMode имеет значение BlendMode.LIGHTEN , Flash Player или Adobe AIR сравнивает значение красного для экранного объекта со значением красного для фона и использует более светлый из них в качестве красного компонента отображаемого цвета.

    В следующей таблице описываются параметры blendMode . Класс BlendMode определяет строковые значения для использования. На иллюстрациях в таблице показаны значения blendMode , примененные к круглому экранному объекту (2) с наложением на другой экранный объект (1).

    Константа BlendMode Рисунок Описание
    BlendMode.NORMAL Экранный объект отображается перед фоном. Значения пикселей экранного объекта переопределяют значения пикселей фона. В прозрачных областях экранного объекта виден фон.
    BlendMode.LAYER Инициирует создание группы прозрачности для экранного объекта. Это означает, что перед дальнейшей обработкой экранный объект сначала составляется во временном буфере. Это выполняется автоматически, если экранный объект заранее сохраняется в кэше посредством кэширования растрового изображения или если экранный объект является контейнером экранных объектов, содержащим хотя бы один дочерний объект с параметром blendMode не в значении BlendMode.NORMAL . Не поддерживается при визуализации с использованием графического процессора.
    BlendMode.MULTIPLY Умножает значения составляющих цветов экранного объекта на значения цветов фона и затем нормализует их путем деления на 0xFF, в результате чего получаются более темные цвета. Этот параметр часто используется для затенения и создания эффекта глубины.

    Например, если составляющий цвет (например, красный) одного пикселя в экранном объекте и соответствующий цвет пикселя в фоне имеют значение 0х88, то в результате умножения получается 0х4840. Деление на 0хFF дает значение 0х48 для данного составляющего цвета, принимающего более темный оттенок, чем в экранном объекте и фоне.

    BlendMode.SCREEN Умножает обратный код цвета экранного объекта на обратный код цвета фона, в результате чего получается эффект осветления. Этот параметр часто используется для высветления или удаления черных областей экранного объекта.
    BlendMode.LIGHTEN Выбирает более светлые из составляющих цветов экранного объекта и цвета фона (цвета с большими значениями). Этот параметр часто используется как тип наложения.

    Например, если в экранном объекте есть пиксель со значением RGB, равным 0xFFCC33, а RGB пикселя фона имеет значение 0xDDF800, то значением RGB отображаемого пикселя является 0xFFF833 (так как 0xFF > 0xDD, 0xCC 0x00 = 33). Не поддерживается при визуализации с использованием графического процессора.

    BlendMode.DARKEN Выбирает более темные из составляющих цветов экранного объекта и цветов фона (цвета с меньшими значениями). Этот параметр часто используется как тип наложения.

    Например, если в экранном объекте есть пиксель со значением RGB, равным 0xFFCC33, а RGB пикселя фона имеет значение 0xDDF800, то значением RGB отображаемого пикселя является 0xDDCC00 (так как 0xFF > 0xDD, 0xCC 0x00 = 33). Не поддерживается при визуализации с использованием графического процессора.

    BlendMode.DIFFERENCE Сравнивает составляющие цвета экранного объекта с цветами его фона и вычитает более темное значение (из двух составляющих цветов) из более светлого значения. Этот параметр часто используется для получения более живых цветов.

    Например, если в экранном объекте есть пиксель со значением RGB, равным 0xFFCC33, а RGB пикселя фона имеет значение 0xDDF800, то значением RGB отображаемого пикселя является 0x222C33 (так как 0xFF — 0xDD = 0x22, 0xF8 — 0xCC = 0x2C и 0x33 — 0x00 = 0x33).

    BlendMode.ADD Прибавляет значения составляющих цветов экранного объекта к значениям цветов его фона (с максимальным значением 0xFF). Этот параметр часто используется для анимации растворения света между двумя объектами.

    Например, если в экранном объекте есть пиксель со значением RGB, равным 0xAAA633, а RGB пикселя фона имеет значение 0xDD2200, то значением RGB отображаемого пикселя является 0xFFC833 (так как 0xAA + 0xDD > 0xFF, 0xA6 + 0x22 = 0xC8 и 0x33 + 0x00 = 0x33).

    BlendMode.SUBTRACT Вычитает значения составляющих цветов экранного объекта из значений цвета фона (с минимальным значением 0). Этот параметр часто используется для анимации растворения затемнения между двумя объектами.

    Например, если в экранном объекте есть пиксель со значением RGB, равным 0xAA2233, а RGB пикселя фона имеет значение 0xDDA600, то значением RGB отображаемого пикселя является 0x338400 (так как 0xDD — 0xAA = 0x33, 0xA6 — 0x22 = 0x84 и 0x00 — 0x33 BlendMode.INVERT

    Инвертирует фон.
    BlendMode.ALPHA Применяет альфа-значение каждого пикселя экранного объекта к фону. Для этого требуется, чтобы параметру blendMode родительского экранного объекта было задано значение BlendMode.LAYER . Например, на иллюстрации для родительского экранного объекта с белым фоном используется настройка blendMode = BlendMode.LAYER . Не поддерживается при визуализации с использованием графического процессора.
    BlendMode.ERASE Стирает фон на основе альфа-значения экранного объекта. Для этого требуется, чтобы настройке blendMode родительского экранного объекта было задано значение BlendMode.LAYER . Например, на иллюстрации для родительского экранного объекта с белым фоном используется настройка blendMode = BlendMode.LAYER . Не поддерживается при визуализации с использованием графического процессора.
    BlendMode.OVERLAY Изменяет цвет каждого пикселя в зависимости от того, насколько темный цвет используется для фона. Если фон светлее 50-процентного серого, цвета экранного объекта и фона отфильтровываются, в результате чего получается более светлый цвет. Если фон темнее 50-процентного серого, цвета умножаются, что дает более темный цвет. Этот параметр часто используется для эффектов затенения. Не поддерживается при визуализации с использованием графического процессора.
    BlendMode.HARDLIGHT Изменяет цвет каждого пикселя в зависимости от того, насколько темный цвет используется для экранного объекта. Если экранный объект светлее 50-процентного серого, цвета экранного объекта и фона отфильтровываются, в результате чего получается более светлый цвет. Если экранный объект темнее 50-процентного серого, цвета умножаются, что дает более темный цвет. Этот параметр часто используется для эффектов затенения. Не поддерживается при визуализации с использованием графического процессора.
    BlendMode.SHADER нет Изменяет цвета с использованием пользовательской подпрограммы затенения. Используемое затенение задано в качестве экземпляра Shader, присвоенного свойству blendShader . Применение свойства blendShader к экземпляру Shader автоматически приведет к смене значения свойства blendMode на BlendMode.SHADER . Если для свойства blendMode задано BlendMode.SHADER без предварительного задания свойства blendShader , то свойство blendMode примет значение BlendMode.NORMAL . Не поддерживается при визуализации с использованием графического процессора.

    Реализация
    public function get blendMode():String
    public function set blendMode(value:String):void

    Связанные элементы API

    blendShader

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5

    Задает затенение, используемое при наложении переднего плана на фон. Если свойство blendMode настроено на BlendMode.SHADER , то в качестве выхода режима наложения для экранного объекта используется объект Shader.

    Применение свойства blendShader к экземпляру Shader автоматически приведет к смене значения свойства blendMode на BlendMode.SHADER . Если же свойство blendShader установлено (устанавливает blendMode на значение BlendMode.SHADER ), то значение свойства blendMode изменяется. Режим наложения можно настроить на использование затенения для наложения, установив свойство blendMode на значение BlendMode.SHADER . Необходимость в повторной установке свойства blendShader отсутствует, за исключением тех случаев, когда требуется сменить затенение, используемое для режима наложения.

    Присвоенный свойству blendShader объект Shader должен задавать как минимум пару входов image4 . Отсутствует необходимость указания вводов в коде с помощью свойств input связанных объектов ShaderInput В качестве первого входного изображения используется экранный объект на заднем плане (вход со значением index 0). В качестве второго входного изображения используется экранный объект на переднем плане (вход со значением index 1). Затенение, используемое в качестве затенения наложения, может задавать больше двух входов. В этом случае все дополнительные входы следует задавать в свойстве input объекта ShaderInput.

    При присвоении данному свойству экземпляра объекта Shader происходит копирование затенения на внутреннем уровне. При выполнении операции наложения используется эта копия, а не ссылка на исходное затенение. Изменения параметров затенения (изменение значения параметра, ввода или байт-кода) не влияют на используемую для наложения копию затенения.

    Реализация
    public function set blendShader(value:Shader):void

    Выдает

    ArgumentError — Если тип выхода затенения несовместим с данной операцией (затенение должно указать выход pixel4 ).
    ArgumentError — Если затенение задает меньше двух входных изображений или если первые два входа не являются входами image4 .
    ArgumentError — Если затенение задает неподдерживаемое входное изображение.
    ArgumentError — Если экземпляр ByteArray или Vector. используется в качестве ввода, а свойства width и height для ShaderInput не указаны либо указанные значения не соответствуют количеству данных во входном объекте. Дополнительные сведения см. в описании ShaderInput.input .

    Связанные элементы API

    cacheAsBitmap

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    При значении true среда выполнения Flash кэширует внутреннее растровое представление экранного объекта. Такое кэширование может повысить производительность для экранных объектов со сложным векторным содержимым.

    Все векторные данные для экранного объекта, имеющего кэшированный растр, вырисовываются в растровом изображении, а не в основной области отображения. Если cacheAsBitmapMatrix имеет значение null или не поддерживается, растровое изображение копируется на основной экран в виде нерастянутых и неповернутых пикселей, привязанных к границам ближайших пикселей. Пиксели отображаются в точном соответствии с родительским объектом. При изменении границ растрового изображения оно не растягивается, а создается повторно.

    Если свойство cacheAsBitmapMatrix поддерживается и имеет ненулевое значение, объект отрисовывается на растровом изображении вне экрана с использованием этой матрицы, и результат его визуализации с растяжением и/или поворотом используется для отрисовки объекта на главном экране.

    Внутреннее растровое представление создается, только если свойство cacheAsBitmap имеет значение true .

    После задания свойству cacheAsBitmap значения true визуализация остается без изменений, однако экранный объект автоматически выполняет привязку к пикселям. Скорость анимации может значительно увеличиться в зависимости от сложности векторного содержимого.

    Свойство cacheAsBitmap автоматически получает значение true каждый раз, когда к экранному объекту применяется фильтр (при непустом массиве filter ). Если к экранному объекту применяется фильтр, его свойство cacheAsBitmap отражается в значении true , даже если ему было задано значение false . Если удалить все фильтры экранного объекта, параметр cacheAsBitmap вернется к последнему заданному значению.

    В следующих случаях экранный объект не использует растровое изображение, даже если свойство cacheAsBitmap имеет значение true , а вместо этого визуализирует векторные данные:

    • Растровое изображение слишком большое. В AIR 1.5 и Flash Player 10 максимальный размер растрового изображения составляет 8,191 пикселей в ширину или высоту, а общее количество пикселей не может превышать 16,777,215. (Т.е. если ширина растрового изображения составляет 8,191 пикселя, его высота не может быть больше 2 048 пикселей.) В проигрывателе Flash Player 9 и более ранних версий это ограничение составляет 2 880 пикселей в высоту и 2 880 пикселей в ширину.
    • Не удается выделить память для растрового изображения (с выдачей ошибки нехватки памяти).


    Свойство cacheAsBitmap лучше всего использовать для фрагментов роликов, в которых преобладает статичное содержимое и редко используется масштабирование и поворот. Использование в таких фрагментах роликов свойства cacheAsBitmap может повысить производительность при преобразовании фрагмента ролика (при изменении координат x и y).

    Реализация
    public function get cacheAsBitmap():Boolean
    public function set cacheAsBitmap(value:Boolean):void

    Связанные элементы API

    cacheAsBitmapMatrix

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 2.0

    Если задано ненулевое значение, данный объект Matrix определяет способ визуализации экранного объекта, когда свойство cacheAsBitmap имеет значение true . Приложение использует эту матрицу как матрицу преобразования, которая применяется при визуализации растровой версии этого экранного объекта.

    Поддержка профиля AIR: эта функция поддерживается на мобильных устройствах, но не поддерживается в компьютерных операционных системах. Поддержка также ограничена на устройствах AIR for TV. В частности, на устройствах AIR for TV поддерживаемые преобразования включают масштабирование и перенос, но не поворот или наклон. Дополнительные сведения о поддержке API-интерфейса в разных профилях см. в разделе «Поддержка в профилях AIR».

    Когда задано свойство cacheAsBitmapMatrix , приложение сохраняет кэшированное растровое изображение на протяжении различных двухмерных преобразований, включая перенос, поворот и масштабирование. Если приложение использует аппаратное ускорение, то объект будет храниться в видеопамяти как текстура. Это позволяет графическому процессору применять поддерживаемые преобразования к объекту. Графический процессор может выполнять эти преобразования быстрее, чем ЦП.

    Чтобы использовать аппаратное ускорение, во Flash Professional CS5 откройте диалоговое окно «Настройки iPhone», перейдите на вкладку «Общие» и задайте для параметра «Визуализация» значение «Графический процессор». Также можно задать свойству renderMode значение gpu в файле дескриптора приложения. Обратите внимание, что на устройствах AIR for TV автоматически используется аппаратное ускорение, если оно доступно.

    Например, следующий код отправляет непреобразованное растровое представление экранного объекта в графический процессор:

    Обычно достаточно использовать матрицу идентичности ( new Matrix() ). Однако также можно использовать другую матрицу, например уменьшенную, чтобы загрузить в графический процессор другое растровое изображение. В следующем примере применяется матрица cacheAsBitmapMatrix , масштаб которой изменен в 0,5 раза по осям Х и Y. Растровый объект, используемый графическим процессором, имеет меньший размер, однако он корректируется процессором в соответствии со свойством transform.matrix экранного объекта:

    Как правило, следует использовать такую матрицу, которая преобразует экранный объект до размера, используемого в программе. Например, если в приложении отображается вдвое уменьшенная растровая версия спрайта, следует использовать матрицу, которая в два раза уменьшает масштаб изображения. Если в приложении должен отображаться спрайт, размеры которого превышают текущие, используйте матрицу, которая выполняет масштабирование с требуемым коэффициентом.

    Примечание. Свойство cacheAsBitmapMatrix может использоваться для двухмерных преобразований. Если требуется применить преобразования в трехмерном пространстве, для этого нужно установить свойство 3D объекта и задать требуемое значение для его свойства transform.matrix3D . Если приложение упаковано с использованием режима «Графический процессор», это позволяет применять к объекту 3D-преобразования с использованием графического процессора. Свойство cacheAsBitmapMatrix игнорируется для 3D-объектов.

    Реализация
    public function get cacheAsBitmapMatrix():Matrix
    public function set cacheAsBitmapMatrix(value:Matrix):void

    Связанные элементы API

    filters

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9

    Индексированный массив, который содержит все объекты filter, связанные в настоящий момент с экранным объектом. Пакет flash.filters содержит несколько классов, определяющих конкретные фильтры, доступные для использования.

    Фильтры можно применять в ходе работы в инструменте разработки Flash Professional или во время выполнения с использованием кода ActionScript. Чтобы применить фильтр с помощью ActionScript, необходимо создать временную копию всего массива filters , внести в нее необходимые изменения, а затем присвоить полученное значение исходному массиву filters . Нельзя добавлять новый объект filter напрямую в массив filters .

    Чтобы добавить фильтр с помощью ActionScript, выполните следующие действия (предположим, что целевой экранный объект называется myDisplayObject ).

    1. Создайте новый объект filter с помощью метода конструктора выбранного класса фильтра.
    2. Присвойте значение массива myDisplayObject.filters временному массиву, например, массиву с именем myFilters .
    3. Добавьте новый объект filter во временный массив myFilters .
    4. Присвойте значение временного массива массиву myDisplayObject.filters .

    Если массив filters не определен, то временный массив использовать не требуется. Вместо этого можно напрямую присвоить литерал массива, содержащий один или несколько созданных вами объектов filter. В первом примере раздела «Примеры» добавляется фильтр «Тень» с помощью кода, обрабатывающего определенный и неопределенный массивы filters .

    Чтобы изменить существующий объект filter, необходимо использовать прием изменения копии массива filters .

    1. Присвойте значение массива filters временному массиву, например, массиву с именем myFilters .
    2. Модифицируйте свойство с помощью временного массива с именем myFilters . Например, чтобы настроить свойство quality первого фильтра массива, можно использовать следующий код: myFilters[0].quality = 1;
    3. Присвойте значение временного массива массиву filters .

    Если экранный объект имеет соответствующий фильтр, то во время загрузки он помечается для кэширования в виде прозрачного растрового изображения. С этого момента проигрыватель кэширует экранный объект в виде растрового изображения, если этот объект имеет действительный список фильтров. Исходное растровое изображение используется в качестве источника для эффектов фильтра. Каждый экранный объект, как правило, имеет два растровых изображения: одно с исходным нефильтрованным экранным объектом, а другой для конечного изображения, полученного после фильтрации. Конечное изображение используется при визуализации. Если экранный объект не изменяется, конечное изображение не обновляется.

    Пакет flash.filters включает классы фильтров. Например, чтобы создать фильтр DropShadow, необходимо использовать код:

    Можно использовать оператор is , чтобы определить тип фильтра, присвоенного для каждой позиции индекса в массиве filter . На примере следующего кода показывается, как определить положение первого фильтра в массиве filters — DropShadowFilter.

    Примечание. Так как нельзя добавить новый объект filter напрямую в массив DisplayObject.filters , следующий код не окажет действия на целевой экранный объект с именем myDisplayObject .

    Реализация
    public function get filters():Array
    public function set filters(value:Array):void

    Выдает

    ArgumentError — Если в filters входит ShaderFilter, и тип выхода затенения не совместим с данной операцией (затенение должно задать выход pixel4 ).
    ArgumentError — Если в filters входит ShaderFilter и затенение не задает ни одного входного изображения или если первичный вход не является входом image4 .
    ArgumentError — Если в filters входит ShaderFilter, и затенение задает неподдерживаемое входное изображение.
    ArgumentError — Если в filters входит экземпляр ShaderFilter, ByteArray или Vector. в качестве ввода затенения, а свойства width и height для ShaderInput не указаны, или их значения не соответствуют входным данным. Дополнительные сведения см. в описании ShaderInput.input .

    Связанные элементы API

    height

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает высоту экранного объекта в пикселях. Высота вычисляется на основе границ содержимого экранного объекта. Когда задается свойство height , соответствующим образом изменяется и свойство scaleY , как показано в следующем коде.

    За исключением объектов TextField и Video, экранные объекты без содержимого (например, пустой спрайт), имеют высоту 0, даже если задать свойству height другое значение.

    Реализация
    public function get height():Number
    public function set height(value:Number):void

    Пример ( Использование этого примера )

    loaderInfo

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Возвращает объект LoaderInfo, содержащий сведения о загрузке файла, к которому принадлежит этот экранный объект. Свойство loaderInfo определяется только для корневого экранного объекта SWF-файла или для загруженного объекта Bitmap (а не нарисованного с помощью ActionScript). Чтобы найти объект loaderInfo , связанный с SWF-файлом, содержащим экранный объект с именем myDisplayObject , используйте myDisplayObject.root.loaderInfo .

    Загрузку большого SWF-файла можно отслеживать с помощью метода this.root.loaderInfo.addEventListener(Event.COMPLETE, func) .

    Реализация
    public function get loaderInfo():LoaderInfo

    Связанные элементы API

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Вызывающий экранный объект маскируется заданным объектом mask . Чтобы обеспечить маскирование при масштабировании рабочей области, экранный объект mask должен быть активным элементом списка отображения. Сам объект mask не отображается. Чтобы удалить маску, нужно задать для mask значение null .

    Чтобы обеспечить масштабирование объекта mask, его необходимо добавить в список отображения. Чтобы обеспечить возможность перетаскивания маскирующего объекта Sprite (вызовом метода startDrag() ), его необходимо добавить в список отображения. Чтобы вызвать метод startDrag() для маскирующего спрайта при отправке им события mouseDown , задайте свойству спрайта buttonMode свойство true .

    Когда экранные объекты кэшируются путем установки для свойства cacheAsBitmap значения true , а для свойства cacheAsBitmapMatrix — объекта «Matrix», и маска и отображаемый объект, на который накладывается маска, должны быть частью одного помещенного в кэш растрового изображения. Таким образом, если в кэш помещается отображаемый объект, маска должна быть дочерним элементом этого объекта. Если в кэш помещается предок объекта из списка отображения, маска должна быть дочерним элементом этого предка или одного из его потомков. Если в кэш помещается несколько предков объекта с наложенной маской, эта маска должна быть потомком кэшированного контейнера, самого близкого к объекту в списке отображения.

    Примечание. Один объект mask не может использоваться для маскирования нескольких вызывающих экранных объектов. Когда mask назначается второму экранному объекту, он перестает быть маской первого, для которого свойство mask получает значение null .

    metaData

    Получает объект метаданных экземпляра DisplayObject, если метаданные хранились вместе с экземпляром этого DisplayObject в SWF-файле через тег PlaceObject4.

    Реализация
    public function get metaData():Object
    public function set metaData(value:Object):void

    mouseX

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает координату x мыши или курсора пользовательского ввода (в пикселях).

    Примечание. Для повернутого объекта DisplayObject возвращенная координата x будет характеризовать объект, поворот которого не выполнен.

    mouseY

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает координату y мыши или курсора пользовательского ввода (в пикселях).

    Примечание. Для повернутого объекта DisplayObject возвращенная координата y будет характеризовать объект, поворот которого не выполнен.


    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает имя экземпляра DisplayObject. Объект можно найти в списке дочерних объектов родительского контейнера экранных объектов путем вызова метода getChildByName() контейнера.

    Реализация
    public function get name():String
    public function set name(value:String):void

    Выдает

    IllegalOperationError — При попытке задать это свойство для объекта, помещенного на временную шкалу инструмента разработки Flash.

    Пример ( Использование этого примера )

    opaqueBackground

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Определяет, является ли экранный объект непрозрачным с определенным цветом фона. Прозрачное растровое изображение содержит данные альфа-канала и рисуется прозрачным. Непрозрачное растровое изображение не имеет альфа-канала (и визуализируется быстрее, чем прозрачное изображение). Если растровое изображение непрозрачное, требуется задать для него собственный цвет фона.

    Если задать численное значение, поверхность будет непрозрачной, а RGB-цвет фона будет соответствовать заданному числу. Если оставить значение по умолчанию null , у экранного объекта будет прозрачный фон.

    Свойство opaqueBackground предназначено, главным образом, для использования вместе со свойством cacheAsBitmap с целью оптимизации визуализации. Для экранных объектов со свойством cacheAsBitmap в значении true настройка свойства opaqueBackground может повысить производительность.

    Непрозрачная область фона не сопоставляется при вызове метода hitTestPoint() с параметром shapeFlag в значении true .

    Непрозрачная область фона не реагирует на события мыши.

    Реализация
    public function get opaqueBackground():Object
    public function set opaqueBackground(value:Object):void

    Связанные элементы API

    parent

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает объект DisplayObjectContainer, содержащий данный экранный объект. Используйте свойство parent , чтобы задать относительный путь к экранным объектам, находящимся на более высоких уровнях иерархии списка отображения, чем текущий объект.

    Свойство parent можно использовать для перемещения объекта вверх на несколько уровней в списке отображения, как показано ниже.

    Реализация
    public function get parent():DisplayObjectContainer

    Выдает

    SecurityError — Данный родительский экранный объект принадлежит изолированной программной среде, к которой нет доступа. Чтобы избежать такой ситуации, родительский ролик должен вызвать метод Security.allowDomain() .

    Пример ( Использование этого примера )

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    В случае с экранным объектом в загруженном SWF-файле свойством root является самый верхний экранный объект в части структуры дерева списка отображения, представленной этим SWF-файлом. Для объекта Bitmap, представляющего файл загруженного изображения, свойством root является сам объект Bitmap. Для экземпляра основного класса первого загруженного SWF-файла свойством root является сам экранный объект. Свойством root объекта Stage является сам объект Stage. Свойство root имеет значение null для экранных объектов, не добавленных в список отображения, если они не добавлены в контейнер экранных объектов, не включенный в список отображения, но являющийся дочерним элементом экранного объекта верхнего уровня в загруженном SWF-файле.

    Например, если создается новый объект Sprite путем вызова метода конструктора Sprite() , его свойство root имеет значение null до тех пор, пока он не будет добавлен в список отображения (или в контейнер экранных объектов, не включенный в список отображения, но являющийся дочерним объектом экранного объекта верхнего уровня в SWF-файле).

    Для загруженного SWF-файла, несмотря на то, что объект Loader, использованный для загрузки, может не входить в список отображения, свойством root экранного объекта верхнего уровня этого файла является сам объект. Свойство root объекта Loader не задается, пока он не будет добавлен в качестве дочернего объекта экранного объекта, для которого уже задано свойство root .

    rotation

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает поворот экземпляра DisplayObject относительно его исходной ориентации (в градусах). Значения от 0 до 180 задают поворот по часовой стрелке. Значения от 0 до -180 задают поворот против часовой стрелки. Значения за пределами этого диапазона добавляются или вычитаются из 360 для получения допустимого значения. Например, инструкция my_v > равносильна my_v >.

    Реализация
    public function get rotation():Number
    public function set rotation(value:Number):void

    Пример ( Использование этого примера )

    rotationX

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5, Flash Lite 4

    Обозначает поворот в градусах по оси x экземпляра DisplayObject относительно исходной ориентации по трехмерному вышестоящему контейнеру. Значения от 0 до 180 задают поворот по часовой стрелке. Значения от 0 до -180 задают поворот против часовой стрелки. Значения за пределами этого диапазона, добавляются или вычитаются из 360 для получения допустимого значения.

    Реализация
    public function get rotationX():Number
    public function set rotationX(value:Number):void

    Пример ( Использование этого примера )

    rotationY

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5, Flash Lite 4

    Обозначает угол поворота в градусах по оси у экземпляра DisplayObject относительно исходной ориентации по трехмерному родительскому контейнеру. Значения от 0 до 180 задают поворот по часовой стрелке. Значения от 0 до -180 задают поворот против часовой стрелки. Значения за пределами этого диапазона, добавляются или вычитаются из 360 для получения допустимого значения.

    Реализация
    public function get rotationY():Number
    public function set rotationY(value:Number):void

    Пример ( Использование этого примера )

    rotationZ

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5, Flash Lite 4

    Обозначает угол поворота в градусах по оси z экземпляра DisplayObject относительно исходной ориентации по трехмерному родительскому контейнеру. Значения от 0 до 180 задают поворот по часовой стрелке. Значения от 0 до -180 задают поворот против часовой стрелки. Значения за пределами этого диапазона, добавляются или вычитаются из 360 для получения допустимого значения.

    Реализация
    public function get rotationZ():Number
    public function set rotationZ(value:Number):void

    scale9Grid

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Текущая активная сетка масштабирования. Если установлено значение null , весь объект отображения масштабируется в обычном порядке при применении любых преобразований масштаба.

    При определении свойства scale9Grid экранный объект разбивается на сетку с девятью областями на основе прямоугольника scale9Grid , определяющего центральную область сетки. Восемь остальных областей сетки:

    • Верхний левый угол за пределами прямоугольника
    • Область над прямоугольником
    • Верхний правый угол за пределами прямоугольника
    • Область слева от прямоугольника
    • Область справа от прямоугольника
    • Нижний левый угол за пределами прямоугольника
    • Область под прямоугольником
    • Нижний правый угол за пределами прямоугольника

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

    При масштабировании объекта отображения с определенным свойством scale9Grid текст и градиенты масштабируются в обычном порядке, однако к остальным типам объектов применяются следующие правила.

    • Содержимое центральной области масштабируется как обычно.
    • Содержимое в углах не масштабируется.
    • Содержимое в верхней и нижней областях масштабируется только по горизонтали. Содержимое в правой и левой областях масштабируется только по вертикали.
    • Все заливки (включая растровые изображения, видео и градиенты) растягиваются в соответствии с новыми размерами.

    При повороте экранного объекта последующее масштабирование выполняется в обычном режиме (и свойство scale9Grid игнорируется).

    В качестве примера рассмотрим следующий экранный объект и прямоугольник, применяемый в качестве его свойства scale9Grid

    Красный прямоугольник показывает scale9Grid .

    При масштабировании или растягивании экранного объекта объекты в пределах прямоугольника масштабируются в обычном порядке, а объекты за его пределами масштабируются согласно правилам scale9Grid .

    Масштабируется до 75%
    Масштабируется до 50%
    Масштабируется до 25%
    Вытягивается по горизонтали до 150%

    Как правило, параметр scale9Grid используется для установки экранного объекта в качестве компонента, области краев которого сохраняют ширину при масштабировании компонента.

    Реализация
    public function get scale9Grid():Rectangle
    public function set scale9Grid(value:Rectangle):void

    Выдает

    ArgumentError — Если методу передается недопустимый аргумент.

    Связанные элементы API

    scaleX

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает горизонтальное масштабирование объекта от точки регистрации (в процентах). Точка регистрации по умолчанию — (0,0). 1,0 соответствует масштабу 100%.


    Масштабирование локальной системы координат изменяет значения свойств x и y , определяемые в целых пикселях.

    Реализация
    public function get scaleX():Number
    public function set scaleX(value:Number):void

    Пример ( Использование этого примера )

    scaleY

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает вертикальное масштабирование объекта от точки регистрации (в процентах). Точка регистрации по умолчанию — (0,0). 1,0 соответствует масштабу 100%.

    Масштабирование локальной системы координат изменяет значения свойств x и y , определяемые в целых пикселях.

    Реализация
    public function get scaleY():Number
    public function set scaleY(value:Number):void

    Пример ( Использование этого примера )

    scaleZ

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5

    Указывает глубину масштабирования объекта (в процентах) относительно точки регистрации этого объекта. Точка регистрации по умолчанию — (0,0). 1,0 соответствует масштабу 100%.

    Масштабирование локальной системы координат изменяет значения свойств x , y и z , определяемые в целых пикселях.

    Реализация
    public function get scaleZ():Number
    public function set scaleZ(value:Number):void

    Связанные элементы API

    scrollRect

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9

    Прямоугольная область прокрутки экранного объекта. Экранный объект обрезается до размера, определенного прямоугольником, и прокручивается в его границах при изменении свойств x и y объекта scrollRect .

    Свойства объекта scrollRect объекта Rectangle используют координатную плоскость экранного объекта и масштабируются просто как общий экранный объект. Углы обрезанного окна на экранном объекте прокрутки являются исходной точкой экранного объекта (0,0) и точкой, определенной шириной и высотой прямоугольника. Они не центрируются по исходной точке, а используют ее для определения верхнего левого угла области. Прокручиваемый экранный объект всегда прокручивается прибавлениями по целым пикселям.

    Можно прокручивать объект влево и вправо, настроив свойство x для scrollRect объекта Rectangle. Чтобы прокручивать объект вверх и вниз, нужно настроить свойство y для scrollRect объекта Rectangle. Если экранный объект, повернутый на 90°, прокручивается влево и вправо, на самом деле экранный объект прокручивается вверх и вниз.

    Обратите внимание, что изменения свойства scrollRect обрабатываются, только когда объект визуализован. Такие методы, как localToGlobal , могут не давать ожидаемого результата, если они вызываются сразу после изменения scrollRect .

    Примечание. Начиная с версии Flash Player 11.4/AIR 3.4 отрицательные значения для ширины или высоты прямоугольника изменены на 0.

    Реализация
    public function get scrollRect():Rectangle
    public function set scrollRect(value:Rectangle):void

    Связанные элементы API

    stage

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Класс Stage экранного объекта. Программа среды выполнения Flash имеет только один объект Stage. Например, можно создать и загрузить в список отображения несколько экранных объектов, и для каждого из них свойство stage будет ссылаться на один и тот же объект Stage (даже если экранный объект принадлежит загруженному SWF-файлу).

    Если экранный объект не добавлен в список отображения, его свойство stage имеет значение null .

    transform

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Объект со свойствами, относящимися к матрице, преобразованию цвета и пиксельным границам экранного объекта. Конкретные свойства (matrix, colorTransform и три свойства только для чтения ( concatenatedMatrix , concatenatedColorTransform и pixelBounds )) описываются в разделе, посвященном классу Transform.

    Каждое из свойств объекта transform представляет собой объект. Это очень важно, так как единственным способом задать новые значения для объектов matrix или colorTransform является создание нового объекта и его копирование в свойство transform.matrix или transform.colorTransform.

    Например, чтобы увеличить значение tx матрицы экранного объекта, необходимо скопировать весь объект matrix, а затем копировать новый объект в свойство matrix объекта transform.

    Свойство tx нельзя задавать напрямую. Следующий код не действует на myDisplayObject .

    Также можно копировать весь объект transform и назначить его свойству transform другого экранного объекта. Например, следующий код копирует весь объект transform из myOldDisplayObj в myNewDisplayObj .

    Полученный экранный объект, myNewDisplayObj , теперь имеет те же значения для матрицы, преобразования цвета и пиксельных границ, что и старый экранный объект, myOldDisplayObj .

    Обратите внимание, что на устройствах AIR for TV используется аппаратное ускорение, если оно доступно, для преобразований цветов.

    Реализация
    public function get transform():flash.geom:Transform
    public function set transform(value:flash.geom:Transform):void

    Связанные элементы API

    visible

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Определяет видимость экранного объекта. Невидимые экранные объекты отключаются. Например, если visible=false для экземпляра InteractiveObject, то он не реагирует на щелчки мыши.

    Реализация
    public function get visible():Boolean
    public function set visible(value:Boolean):void

    Пример ( Использование этого примера )

    width

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает ширину экранного объекта в пикселях. Ширина вычисляется на основе границ содержимого экранного объекта. Когда задается свойство width , соответствующим образом изменяется и свойство scaleX , как показано в следующем коде.

    За исключением объектов TextField и Video, экранные объекты без содержимого (например, пустой спрайт), имеют ширину 0, даже если задать свойству width другое значение.

    Реализация
    public function get width():Number
    public function set width(value:Number):void

    Пример ( Использование этого примера )

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает координату x экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. Если объект включен в DisplayObjectContainer с преобразованиями, то он находится в локальной системе координат содержащего его DisplayObjectContainer. Таким образом, если объект DisplayObjectContainer повернут на 90° против часовой стрелки, дочерние элементы наследуют систему координат с поворотом на 90° против часовой стрелки. Координаты объекта определяются относительно положения точки регистрации.

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Указывает координату y экземпляра DisplayObject, связанную с локальными координатами родительского DisplayObjectContainer. Если объект включен в DisplayObjectContainer с преобразованиями, то он находится в локальной системе координат содержащего его DisplayObjectContainer. Таким образом, если объект DisplayObjectContainer повернут на 90° против часовой стрелки, дочерние элементы наследуют систему координат с поворотом на 90° против часовой стрелки. Координаты объекта определяются относительно положения точки регистрации.

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5

    Указывает положение по оси z экземпляра DisplayObject относительно трехмерного вышестоящего контейнера. Свойство z предназначено для работы с трехмерными системами координат, а не с экранными или пиксельными координатами.

    При установке свойства z экранного объекта на значение, отличное от значения по умолчанию, равного 0 , автоматически создается соответствующий объект Matrix3D. для регулирования положения и ориентации экранного объекта в трехмерном пространстве. При работе с осью z существующее поведение свойств х и у изменяется с экранных или пиксельных координат на положения относительно трехмерного вышестоящего контейнера.

    Например, потомок объекта _root в положении x = 100, y = 100, z = 200 не отрисовывается в пиксельном положении (100,100). Потомок отображается в месте, определенном путем вычисления трехмерной проекции. Вычисление производится следующим образом:

    Реализация
    public function get z():Number
    public function set z(value:Number):void

    Связанные элементы API

    getBounds

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Возвращает прямоугольник, определяющий область экранного объекта, которая относится к системе координат объекта targetCoordinateSpace . На примере следующего кода рассмотрим, как возвращаемый прямоугольник может изменяться в зависимости от передаваемого методу параметра targetCoordinateSpace .

    Примечание. Используйте методы localToGlobal() и globalToLocal() для преобразования локальных координат экранного объекта в координаты экрана и наоборот.

    Метод getBounds() похож на метод getRect() , однако прямоугольник, возвращаемый методом getBounds() , включает все штрихи на фигурах, а возвращаемый методом getRect() — нет. Пример см. в описании метода getRect() .


    Параметры

    targetCoordinateSpace :DisplayObject — Экранный объект, определяющий используемую систему координат

    Возвращает

    Rectangle — Прямоугольник, определяющий область экранного объекта относительно системы координат объекта targetCoordinateSpace .

    Связанные элементы API

    getRect

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Возвращает прямоугольник, определяющий границу объекта отображения по системе координат, определенной параметром targetCoordinateSpace за исключением линий фигур. Значения, возвращаемые методом getRect() , равны или меньше возвращаемых методом getBounds() .

    Примечание. Используйте методы localToGlobal() и globalToLocal() для преобразования локальных координат отображаемого объекта в координаты рабочей области и наоборот.

    Параметры

    targetCoordinateSpace :DisplayObject — Экранный объект, определяющий используемую систему координат

    Возвращает

    Rectangle — Прямоугольник, определяющий область экранного объекта относительно системы координат объекта targetCoordinateSpace .

    Связанные элементы API

    globalToLocal

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Преобразует объект Point из координат рабочей области (глобальных) в координаты экранного объекта (локальные).

    Чтобы воспользоваться этим методом, сначала нужно создать экземпляр класса Point. Присвоенные вами значения x и y представляют глобальные координаты, так как они указаны относительно исходной точки (0,0) основной области отображения. Затем экземпляр Point следует передать в качестве параметра методу globalToLocal() . Этот метод возвращает новый объект Point со значениями x и y, указанными относительно исходной точки отображаемого объекта, а не рабочей области.

    Параметры

    point :Point — Объект, созданный с использованием класса Point. Объект Point задает координаты x и y в качестве свойств.

    Возвращает

    Point — Объект Point с координатами относительно отображаемого объекта.

    Связанные элементы API

    globalToLocal3D

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5, Flash Lite 4

    Преобразует двумерный объект Point из координат рабочей области (глобальных) в координаты экранного трехмерного объекта (локальные).

    Чтобы воспользоваться этим методом, сначала нужно создать экземпляр класса Point. Присвоенные объекту Point значения x и y представляют глобальные координаты, так как они указаны относительно исходной точки (0, 0) основной области отображения. Затем передайте объект Point методу globalToLocal3D() в виде параметра point . Данный метод возвращает трехмерные координаты в виде объекта Vector3D, содержащего значения x , y и z относительно исходной точки трехмерного экранного объекта.

    Параметры

    point :Point — Двухмерный объект Point, представляющий глобальные координаты x и y.

    Возвращает

    Vector3D — Объект Vector3D с координатами относительно трехмерного экранного объекта.

    hitTestObject

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Вычисляет ограничительную рамку экранного объекта, чтобы определить, не перекрывает и не пересекает ли она ограничительную рамку экранного объекта obj .

    Параметры

    obj :DisplayObject — Экранный объект для сравнения.

    Возвращает

    Boolean — true , если ограничительные рамки экранных объектов пересекаются; false , если нет.

    Пример ( Использование этого примера )

    hitTestPoint

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Вычисляет экранный объект, чтобы определить, перекрывает ли он точку, заданную координатами x и y , или пересекает ее. Параметры x и y задают точку в координатной плоскости рабочей области, а не контейнера экранных объектов, содержащего объект (если контейнером не является сама рабочая область).

    Параметры

    x :Number — Координата x, сравниваемая с данным объектом.
    y :Number — Координата у, сравниваемая с данным объектом.
    shapeFlag :Boolean (default = false ) — Указывает, следует ли выполнять тестирование по фактическим пикселям объекта ( true ) или по рамке ( false ).

    Возвращает

    Boolean — Значение — true , если экранный объект перекрывает заданный объект или пересекается с ним; в противном случае — false .

    Связанные элементы API

    local3DToGlobal

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 1.5, Flash Lite 4

    Преобразует трехмерный объект point из координат трехмерного экранного объекта (локальных) в двухмерный объект point с координатами рабочей области (глобальными).

    Например, вы можете использовать только двухмерные координаты (x,y) для рисования при помощи методов display.Graphics . Чтобы нарисовать трехмерный объект, необходимо сопоставить трехмерные координаты экранного объекта двухмерным координатам. Сначала создайте экземпляр класса Vector3D с координатами x, y и z трехмерного экранного объекта. Затем передайте объект Vector3D методу local3DToGlobal() в виде параметра point3d . Метод возвращает двухмерный объект Point, который можно использовать с Graphics API для рисования трехмерного объекта.

    Параметры

    point3d :Vector3D — Объект Vector3D, содержащий либо трехмерный объект point, либо координаты трехмерного экранного объекта.

    Возвращает

    Point — Двухмерный объект point, представляющий трехмерный объект point в двухмерном пространстве.

    Пример ( Использование этого примера )

    localToGlobal

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Преобразует объект point из координат экранного объекта (локальных) в координаты рабочей области (глобальные).

    Этот метод позволяет преобразовать заданные координаты x и y из значений относительно исходной точки (0, 0) конкретного объекта (локальных координат) в значения относительно исходной точки рабочей области (глобальные координаты).

    Чтобы воспользоваться этим методом, сначала нужно создать экземпляр класса Point. Присвоенные вами значения x и y представляют локальные координаты, так как они указаны относительно исходной точки экранного объекта.

    Затем созданный экземпляр Point передается в качестве параметра методу localToGlobal() . Этот метод возвращает новый объект Point со значениями x и y, указанными относительно исходной точки рабочей области, а не объекта отображения.

    Параметры

    point :Point — Имя или идентификатор точки, созданной с использованием класса Point, в качестве свойств которой заданы координаты x и y.

    Возвращает

    Point — Объект Point с координатами относительно рабочей области.

    Связанные элементы API

    added

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Отправляется, когда экранный объект добавляется в список отображения. Это событие запускается следующими методами: DisplayObjectContainer.addChild() , DisplayObjectContainer.addChildAt() .

    Константа Event.ADDED определяет значение свойства type объекта события added .

    Это событие имеет следующие свойства:

    Свойство Значение
    bubbles true
    cancelable false ; поведение по умолчанию, подлежащее отмене, не определено.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Экземпляр DisplayObject, добавляемый в список отображения. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент.

    Связанные элементы API

    addedToStage

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9.0.28.0, Flash Lite 4

    Отправляется, когда экранный объект добавляется к списку отображения на монтажном столе либо непосредственно, либо путем добавления поддерева, содержащего экранный объект. Это событие запускается следующими методами: DisplayObjectContainer.addChild() , DisplayObjectContainer.addChildAt() .

    Константа Event.ADDED_TO_STAGE определяет значение свойства type объекта события addedToStage .

    Это событие имеет следующие свойства:


    Свойство Значение
    bubbles false
    cancelable false ; поведение по умолчанию, подлежащее отмене, не определено.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Экземпляр DisplayObject, добавляемый в список отображения рабочей области напрямую или путем добавления поддерева, в котором он содержится. Если экземпляр DisplayObject добавляется напрямую, перед этим событием отправляется событие added .

    Связанные элементы API

    enterFrame

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    [многоадресное событие] Отправляется, когда точка воспроизведения переходит в новый кадр. Если точка воспроизведения не перемещается или если используется только один кадр, это событие отправляется непрерывно в соответствии с частотой кадров. Это многоадресное событие, которое отправляется всеми экранными объектами, для которых зарегистрированы прослушиватели данного события.

    Константа Event.ENTER_FRAME определяет значение свойства type объекта события enterFrame .

    Примечание. Это событие не имеет фазы захвата и фазы восходящей цепочки, поэтому отправляется непосредственно целевому элементу независимо от того, находится он в списке отображения или нет.

    Это событие имеет следующие свойства:

    Свойство Значение
    bubbles false
    cancelable false ; поведение по умолчанию, подлежащее отмене, не определено.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Любой экземпляр DisplayObject, для которого зарегистрирован прослушиватель события enterFrame .

    exitFrame

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 2, Flash Lite 4

    [многоадресное событие] Отправляется, когда точка воспроизведения покидает текущий кадр. Все сценарии кадров выполнены. Если точка воспроизведения не перемещается или если используется только один кадр, это событие отправляется непрерывно в соответствии с частотой кадров. Это многоадресное событие, которое отправляется всеми экранными объектами, для которых зарегистрированы прослушиватели данного события.

    Константа Event.EXIT_FRAME определяет значение свойства type объекта события exitFrame .

    Примечание. Это событие не имеет фазы захвата и фазы восходящей цепочки, поэтому отправляется непосредственно целевому элементу независимо от того, находится он в списке отображения или нет.

    Это событие имеет следующие свойства:

    Свойство Значение
    bubbles false
    cancelable false ; поведение по умолчанию, подлежащее отмене, не определено.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Любой экземпляр DisplayObject, для которого зарегистрирован прослушиватель события enterFrame .

    frameConstructed

    Язык версии: ActionScript 3.0
    Версии среды выполнения: Flash Player 10, AIR 2, Flash Lite 4

    [многоадресное событие] Отправляется после завершения работы конструкторов экранных объектов кадра до выполнения сценариев кадра. Если точка воспроизведения не перемещается или если используется только один кадр, это событие отправляется непрерывно в соответствии с частотой кадров. Это многоадресное событие, которое отправляется всеми экранными объектами, для которых зарегистрированы прослушиватели данного события.

    Константа Event.FRAME_CONSTRUCTED определяет значение свойства type объекта события frameConstructed .

    Примечание. Это событие не имеет фазы захвата и фазы восходящей цепочки, поэтому отправляется непосредственно целевому элементу независимо от того, находится он в списке отображения или нет.

    Это событие имеет следующие свойства:

    Свойство Значение
    bubbles false
    cancelable false ; поведение по умолчанию, подлежащее отмене, не определено.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Любой экземпляр DisplayObject, для которого зарегистрирован прослушиватель события frameConstructed .

    removed

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    Отправляется перед удалением экранного объекта из списка отображения. Это событие генерируют два метода класса DisplayObjectContainer: removeChild() и removeChildAt() .

    Следующие методы объекта DisplayObjectContainer также генерируют это событие, если один объект должен быть удален с целью освобождения места для нового: addChild() , addChildAt() и setChildIndex() .

    Константа Event.REMOVED определяет значение свойства type объекта события removed .

    Это событие имеет следующие свойства:

    Свойство Значение
    bubbles true
    cancelable false ; поведение по умолчанию, подлежащее отмене, не определено.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Экземпляр DisplayObject, удаляемый из списка отображения. Свойство target не всегда является объектом из списка отображения, для которого зарегистрирован прослушиватель событий. Используйте свойство currentTarget для обращения к объекту в списке отображения, обрабатывающему событие в данный момент.

    removedFromStage

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9.0.28.0, Flash Lite 4

    Отправляется перед удалением экранного объекта из списка отображения либо напрямую, либо путем удаления поддерева, содержащего экранный объект. Это событие генерируют два метода класса DisplayObjectContainer: removeChild() и removeChildAt() .

    Следующие методы объекта DisplayObjectContainer также генерируют это событие, если один объект должен быть удален с целью освобождения места для нового: addChild() , addChildAt() и setChildIndex() .

    Константа Event.REMOVED_FROM_STAGE определяет значение свойства type объекта события removedFromStage .

    Это событие имеет следующие свойства:

    Свойство Значение
    bubbles false
    cancelable false ; поведение по умолчанию, подлежащее отмене, не определено.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Экземпляр DisplayObject, удаляемый из списка отображения рабочей области напрямую или путем удаления поддерева, в котором он содержится. Если экземпляр DisplayObject добавляется напрямую, перед этим событием отправляется событие removed .

    render

    Язык версии: ActionScript 3.0
    Версии среды выполнения: AIR 1.0, Flash Player 9, Flash Lite 4

    [многоадресное событие] Отправляется перед обновлением и визуализацией списка отображения. Это событие дает последнюю возможность объектам, прослушивающим данное событие, внести изменения перед визуализацией списка отображения. Метод invalidate() объекта Stage необходимо вызывать каждый раз, когда нужно отправить событие render . События render отправляются объекту только при условии отношений доверия между ним и объектом, вызвавшим метод Stage.invalidate() . Это многоадресное событие, которое отправляется всеми экранными объектами, для которых зарегистрированы прослушиватели данного события.

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

    Константа Event.RENDER определяет значение свойства type объекта события render .

    Примечание. Это событие не имеет фазы захвата и фазы восходящей цепочки, поэтому отправляется непосредственно целевому элементу независимо от того, находится он в списке отображения или нет.

    Это событие имеет следующие свойства:

    Свойство Значение
    bubbles false
    cancelable false ; поведение по умолчанию отменить невозможно.
    currentTarget Объект, активно обрабатывающий объект Event с помощью прослушивателя событий.
    target Любой экземпляр DisplayObject, для которого зарегистрирован прослушиватель события render .

    © 2015 Adobe Systems Incorporated. All rights reserved.
    Tue Jun 12 2020, 11:34 AM Z

    Работа с данными пакета (package) PL/SQL на примере

    Данные пакета PL/SQL состоят из переменных и констант, определенных на уровне пакета, а не в конкретной его функции или процедуре. Их областью видимости является не отдель­ная программа, а весь пакет. Структуры данных пакета существуют (и сохраняют свои значения) на протяжении всего сеанса, а не только во время выполнения программы. Если данные пакета объявлены в его теле, они сохраняются в течение сеанса, но до­ступны только элементам пакета (то есть являются приватными).

    Если данные пакета объявлены в его спецификации, они также сохраняются в те­чение всего сеанса, но их чтение и изменение разрешено любой пользовательской программе, обладающей привилегией EXECUTE для пакета. Общие данные пакета похожи на глобальные переменные Oracle Forms (а их использование сопряжено с таким же риском).

    Если пакетная процедура открывает курсор, он остается открытым и доступным в ходе всего сеанса. Нет необходимости объявлять курсор в каждой программе. Один модуль может его открыть, а другой — выполнить выборку данных. Переменные пакета могут использоваться для передачи данных между транзакциями, поскольку они привязаны не к транзакции, а к сеансу.

    Глобальные данные в сеансе Oracle

    В среде PL/SQL структуры данных пакета функционируют как глобальные. Однако следует помнить, что они доступны только в пределах одного сеанса или подключения к базе данных Oracle и не могут совместно использоваться несколькими сеансами. Если доступ к данным нужно обеспечить для нескольких сеансов Oracle, используйте пакет DBMS_PIPE (его описание имеется в документации Oracle Built-In Packages).

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

    Допустим, приложение Oracle Forms сохранило значение в пакетной структуре данных. Когда форма вызывает хранимую процедуру, эта процедура может обращаться к тем же пакетным переменным и значениям, что и форма, потому что они используют одно подключение к базе данных. Но допустим, форма генерирует отчет с использованием Oracle Reports. По умолчанию Oracle Reports создает для отчета отдельное подключе­ние к базе данных с тем же именем пользователя и паролем. Даже если отчет обратится к тому же пакету и структурам данных, что и форма, значения, хранимые в структурах данных, доступных форме и отчету, будут разными, поскольку сеанс отчета имеет свой экземпляр пакета и всех его структур.

    По аналогии с двумя типами структур данных в пакетах (общедоступные и приватные) также существуют два типа глобальных данных пакетов: глобальные общедоступные данные и глобальные приватные данные. В следующих трех разделах статьи рассматриваются различные способы использования данных пакетов.

    Глобальные общедоступные данные

    Любая структура данных, объявленная в спецификации пакета, является глобальной общедоступной структурой данных; это означает, что к ней может обратиться любая

    программа за пределами пакета. Например, вы можете определить коллекцию PL/ SQL в спецификации пакета и использовать ее для ведения списка работников, заслу­живших повышение. Вы также можете создать пакет с константами, которые должны использоваться во всех программах. Другие разработчики будут ссылаться на пакетные константы вместо использования фиксированных значений в программах. Глобальные общедоступные структуры данных также могут изменяться, если только они не были объявлены с ключевым словом CONSTANT .

    Глобальные данные обычно считаются источником повышенной опасности в програм­мировании. Их очень удобно объявлять, они прекрасно подходят для того, чтобы вся информация была доступна в любой момент времени — однако зависимость от глобаль­ных структур данных приводит к созданию неструктурированного кода с множеством побочных эффектов.

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

    Передачу данных модулям и из них всегда рекомендуется осуществлять через параме­тры. В этом случае зависимость от структур данных документируется в спецификации и может учитываться разработчиками. С другой стороны, именованные глобальные структуры данных должны создаваться для информации, действительно глобальной по отношению к приложению — например, констант и параметров конфигурации.


    Такие данные следует разместить в централизованном пакете. Однако учтите, что при такой архитектуре в приложении возникает «единая точка перекомпиляции»: каждый раз, когда вы вносите изменение в пакет и перекомпилируете спецификацию, многие программы приложения теряют работоспособность.

    Пакетные курсоры

    Одним из самых интересных типов пакетных данных является явный курсор PL/SQL. Его можно объявить в теле либо в спецификации пакета. Состояние курсора (открыт или закрыт), а также указатель на его набор данных сохраняются в течение всего сеанса. Это означает, что открыть пакетный курсор можно в одной программе, выбрать из него данные — в другой, а закрыть — в третьей. Такая гибкость курсоров предоставляет большие возможности, но в то же время она может стать источником проблем. Сначала мы рассмотрим некоторые тонкости объявления пакетных курсоров, а затем перейдем к открытию, выборке данных и закрытию таких курсоров.

    Объявление пакетных курсоров

    Явный курсор в спецификации пакета можно объявлять двумя способами:

    • Полностью (заголовок курсора и запрос). Именно так объявляются курсоры в ло­кальных блоках PL/SQL .
    • Частично (только заголовок курсора). В этом случае запрос определяется в теле пакета, поэтому реализация курсора скрыта от использующего пакет разработчика. При использовании второго способа в объявление нужно добавить секцию RETURN , ука­зывающую, какие данные будут возвращены при выборке из курсора. На самом деле эти данные определяются инструкцией SELECT , которая присутствует только в теле, но не в спецификации

    В секции RETURN можно задать одну из следующих структур данных:

    • О запись, объявленная на основе таблицы базы данных с использованием атрибута %rowtype ;
    • О запись, определенная программистом.

    Объявление курсора в теле пакета осуществляется так же, как в локальном блоке PL/ SQL . Следующий пример спецификации пакета демонстрирует оба подхода:

    Логика программы описана в следующей таблице.

    Строки Описание
    3-9 Типичное определение явного курсора, полностью заданное в спецификации пакета
    11-13 Определение курсора без запроса. Спецификация указывает, что открыв курсор и выбрав
    из него данные, пользователь получит одну строку из таблицы books под действием заданного фильтра
    15-18 Определение нового типа записи для хранения информации об авторе
    20-22 Объявление курсора, возвращающего сводную информацию о заданном авторе (всего три
    значения)

    Рассмотрим тело пакета и выясним, какой код необходимо написать для работы с каждым из этих курсоров:

    Поскольку у нас имеются два курсора с секциями RETURN , их определения нужно за­вершить в теле пакета. Список выбираемых запросом элементов в теле пакета должен соответствовать (по количеству элементов и их типам данных) секции RETURN в специ­фикации пакета. Если это условие не соблюдается, то при компиляции пакета вы полу­чите одно из следующих сообщений об ошибке:

    Работа с пакетными курсорами

    Теперь давайте посмотрим, как пользоваться пакетными курсорами. Прежде всего для открытия, выборки данных и закрытия вам не придется изучать новый синтаксис — нужно только задать имя пакета перед именем курсора. Например, чтобы запросить информацию о книгах по PL/SQL, можно выполнить такой блок кода:

    Как видите, на основе пакетного курсора точно так же можно объявить переменную с использованием %ROWTYPE и проверить атрибуты. Ничего нового!

    Однако и в этом простом фрагменте кода есть скрытый нюанс. Поскольку курсор объ­явлен в спецификации пакета, его область видимости не ограничивается конкретным блоком PL/SQL . Предположим, мы выполняем следующий код:

    Если затем в том же сеансе выполнить приведенный анонимный блок в приведенном выше цикле LOOP , то Oracle выдаст сообщение об ошибке (ORA-06511).

    Дело в том, что блок, выполненный первым, не закрыл курсор, и по завершении его работы курсор остался открытым.

    При работе с пакетными курсорами необходимо всегда соблюдать следующие правила:

    • Никогда не рассчитывайте на то, что курсор закрыт (и готов к открытию).
    • Никогда не рассчитывайте на то, что курсор открыт (и готов к закрытию).
    • Всегда явно закрывайте курсор после завершения работы с ним. Эту логику также необходимо включить в обработчики исключений; убедитесь в том, что курсор за­крывается на всех путях выхода из программы.

    Если пренебречь этими правилами, то ваши приложения будут работать нестабильно, а в процессе их функционирования могут появиться неожиданные необработанные исклю­чения. Поэтому лучше написать процедуры, которые открывают и закрывают курсоры и учитывают все возможные их состояния. Этот подход реализован в следующем пакете:

    Как видите, вместе с курсором объявлены две сопутствующие процедуры для его от­крытия и закрытия. Если нам, скажем, потребуется перебрать в цикле строки курсора, это можно сделать так:

    В этом фрагменте не используются явные вызовы OPEN и CLOSE . Вместо них вызываются соответствующие процедуры, скрывающие особенности работы с пакетными курсорами.

    Можно взглянуть на ситуацию под другим углом:

    . Вместо того чтобы работать с пакетными курсорами, можно добиться точно такого же эффекта посредством инкапсуляции логики и данных в представлениях и опубликовать их для разработчиков. В этом случае разработчики будут нести ответственность за сопровождение своих курсоров; дело в том, что обеспечить нор­мальное сопровождение с инструментарием, существующим для общедоступных пакетных курсоров, невозможно. А именно, насколько мне известно, невозможно гарантировать использование процедур открытия/закрытия, но курсор всегда будет оставаться видимым для разработчика, который открывает/закрывает его напря­мую; следовательно, такая конструкция остается уязвимой. Проблема усугубляется тем, что использование общедоступных пакетных курсоров и процедур открытия/ закрытия может породить в группе ложное чувство безопасности и защищенности».

    Пакетное создание курсоров и предоставление доступа к ним всем разработчикам, участвующим в проекте, приносит большую пользу. Проектирование оптимальных структур данных приложения — непростая и кропотливая работа. Эти структуры — и хра­нящиеся в них данные — используются в программах PL/SQL, а работа с ними почти всегда осуществляется через курсоры. Если вы не определите свои курсоры в пакетах и не предоставите их «в готовом виде» всем разработчикам, то каждый будет писать собственную реализацию курсора, а это создаст массу проблем с производительностью и сопровождением кода. Пакетные курсоры являются лишь одним из примеров инкап­суляции доступа к структурам данных.

    Повторно инициализируемые пакеты

    По умолчанию пакетные данные сохраняются в течение всего сеанса (или до переком­пиляции пакета). Это исключительно удобное свойство пакетов, но и у него имеются определенные недостатки:

    • Постоянство глобально доступных (общих и приватных) структур данных сопро­вождается нежелательными побочными эффектами. В частности, можно случайно оставить пакетный курсор открытым, а в другой программе попытаться открыть его без предварительной проверки, что приведет к ошибке.
    • Если данные хранятся в структурах уровня пакетов, то программа может занять слишком большой объем памяти, не освобождая ее.

    Для оптимизации использования памяти при работе с пакетами можно использовать директиву SERIALLY_REUSABLE . Она указывает Oracle, что пакет является повторно инициализируемым, то есть его состояние (состояние переменных, открытых пакетных курсоров и т. п.) нужно сохранять не на протяжении сеанса, а на время одного вызова пакетной программы.

    Рассмотрим действие этой директивы на примере пакета book_info . В нем имеются две отдельные программы: для заполнения списка книг и для вывода этого списка.

    Как видно из приведенного ниже тела пакета, список объявляется как приватный гло­бальный ассоциативный массив:

    Чтобы увидеть, как работает эта директива, заполним список и выведем его на экран. В первом варианте оба шага выполняются в одном блоке:

    Заполнение и вывод в одном блоке:

    Во второй версии заполнение и вывод списка производятся в разных блоках. В резуль­тате коллекция окажется пустой:

    Заполнение в первом блоке

    Вывод во втором блоке:

    Работая с повторно инициализируемыми пакетами, необходимо учитывать некоторые особенности:

    • Глобальная память для такого пакета выделяется в системной глобальной области (SGA) базы данных Oracle, а не в пользовательской глобальной области (UGA), что позволяет повтор­но применять рабочую область пакета. При каждом новом обращении к пакету его общие переменные инициализируются значениями по умолчанию или значением NULL, а его инициализационный раздел выполняется повторно.
    • Максимальное количество рабочих областей, необходимых для повторно инициа­лизируемого пакета, равно количеству одновременно работающих с этим пакетом пользователей. Увеличение объема используемой памяти в SGA компенсируется уменьшением объема памяти, задействованного в UGA. Когда нужно предоставить память из SGA другим запросам, Oracle освобождает неиспользуемые области памяти.

    Урок Знакомство с Display Suite

    В этой статье я хотел бы рассказать о весьма полезном модуле, недооценить который просто не возможно. Этот модуль экономит кучу времени и сил при создании тем. Главная мощь модуля заключается в том, что он позволяет настраивать раскладку сущностям. Например, если раньше для темизации конкретного типа материала, приходилось в теме делать для этого типа материалов шаблон, то теперь это можно сделать буквально в пару кликов. Но обо всем по порядку.

    И так для начала нам нужно скачать сам модуль Display Suite, а так же модуль Ctools, без которого Display Suite не работает. Включаем модуль.

    После включения модуля на странице /admin/structure должен появиться пункт меню, связанный с Display Suite. Переходим по данному пути и жмем по ссылке Display suite. Здесь нам откроются ссылки, которые позволяют работать с данным модулем. Первое что нужно сделать, это создать свой Layout. Переходим по ссылке Layout. Нам откроется окно с сущностями Comment, Node, Taxonomy term. Я буду рассказывать на примере Node, но сразу могу сказать, что принцип работы одинаковый.

    В примере на сайте доступно только 2 типа материала: Article и Basic page. Напротив каждого типа материала у нас есть ссылка Manage display.

    Жмём на эту ссылку напротив того типа материалов, для которого хотим сделать раскладку. Откроется окно с настройкой отображения полей, которое многие из вас уже видели. Здесь мы можем включить стандартные отображения, такие как Teaser, Full content, RSS. Я буду использовать в качестве примера Full content.

    Включаем отображение и на этой же странице переходим в настройку включенного отображения.

    После перехода к настройке отображения, необходимо выбрать раскладку. Первоначально их доступно около 10, если из предложных вам не подходит ниодна из раскладок, то можно написать свою, занимает это около 10 минут (как создавать раскладки, я расскажу в другой раз). Итак, выбираем нужную раскладку, и сохраняем. После сохранения нам станут доступны в ноде регионы (их количество зависит от того, какую раскладку вы выбрали), а так же все доступные поля (модуль также позволяет создавать дополнительные поля).

    Прежде чем раскидывать поля по регионам, я в первую очередь добавляю к регионам свои классы (для удобства темизации). Для этого жмем по закладке Extra classes for regions и там кликаем по ссылке Manage region styles. В открывшемся окне, пишем любые названия классов (каждый класс начинается с новой строки).

    Теперь при переходе в закладку Extra classes for regions, там будут доступны наши классы, выбираем для регионов классы и сохраняемся.

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

    Вот что получилось у меня, осталось только темизировать и дело сделано.

    Кстати говоря, есть один нюанс. Если по какой-то причине в каком-либо из регионов у вас нет полей, то для того, что бы он не выводился и не занимал место, в настройках нужно поставить галочку Hide empty regions, ниже есть ещё галочка Disable Drupal blocks/regions, включение этой опции отключает регионы темы и блоки.

    Package не получается установить

    Помогите пожалуйста пытаюсь установить пакет прокси сервера http://www.mentalis.org/soft/projects/proxy/ себе в проект, вот что пишет в консоли

    PM> Install-Package Org.Mentalis.Proxy
    Установка «Org.Mentalis.Proxy 1.0.0.32126».
    «Org.Mentalis.Proxy 1.0.0.32126» успешно установлен.
    Добавление «Org.Mentalis.Proxy 1.0.0.32126» в ConsoleApplication1.
    Удаление «Org.Mentalis.Proxy 1.0.0.32126».
    «Org.Mentalis.Proxy 1.0.0.32126» успешно удален.
    Install failed. Rolling back.
    Install-Package : Не удалось установить пакет «Org.Mentalis.Proxy 1.0.0.32126». Вы пытаетесь установить этот пакет в проект, требуемая версия пл
    атформы которого — «.NETFramework,Version=v4.5», но в пакете нет ссылок на сборки или файлов содержимого, совместимых с этой платформой. Дополни
    тельные сведения можно получить у автора пакета.
    строка:1 знак:16
    + Install-Package 0

    24.12.2015, 20:42

    Крестики-нолики: Не получается задать текст в поле контролла и установить прозрачность фона
    Привет. Пишу крестики-нолики на поле 10 на 10 со своими контролами. Не получается задать текст в.

    Не могу установить package в ХЕ.
    Здравствуйте. Я пытаюсь ставить разные компоненты в ХЕ (не важно Delphi или Builder) и сталкиваюсь.

    В поле OLE вместо Bitmap Image получается Package
    И вместо самой картинки отображается название документа

    не получается установить
    Всем добрый день. Столкнулся с проблемой установки Windows 7 с CD (балванка DVD+R verbatim) не.

    Можно ли отображать номера версии пакета рядом с usings?

    Предположим, что в верхней части моего * .cs файл, я в том числе некоторые зависимости:

    Можно также отображать номера версий здесь, как показано ниже?

    Нет, вы не можете. Это происходит потому, что C # и .NET не нравятся Java, машинопись и другие языки, где сочетается концепция пространств имен, пакеты и библиотек — в .NET они полностью обособлены несколько пакетов могут включать в себя тот же библиотеке DLL-файл, и несколько библиотеки библиотеки DLL, может способствовать достижению общих и различных пространств имен.

    Например, System пространство имен имеют свои член в mscorlib.dll , System.dll , System.Core.dll и других. Ни одна из этих сборок не принадлежат к какому — либо конкретному пакету , как они часть BCL в вашей реализации CLR. Кроме того, каждый волен объявить свои собственные типы в namespace System .

    Что касается «пакетов»: среда СЕК совершенно не знают о них: они дизайн-время забота; вместо того, чтобы все это заботится о том, что DLL файлы связать. Вы не должны использовать пакеты NuGet на всех (разработчик .NET выжили просто отлично в течение первых 13 лет без встроенного менеджера пакетов).

    Обратите внимание , что NuGet позволяет иметь несколько DLL — файлов в один пакет , а пакет автор не должен «владеть» ( по закону или иным образом ) в DLL , содержащиеся в либо, что означает несколько пакетов NuGet могут совместно использовать один и тот же сборки DLL, и те , библиотеки DLL могут обмениваться пространствами имен.

    Я принимаю вопрос с этими словами вашими:

    Я в том числе некоторых зависимостей:

    Понравилась статья? Поделиться с друзьями:
    Кодинг, CSS и SQL