W celu tworzenia nowych zachowań można tworzyć podklasy klasy HTMLLoader. Na przykład: można utworzyć podklasę, która definiuje domyślne detektory zdarzeń dla zdarzeń HTMLLoader (np. zdarzeń wywoływanych podczas renderowania HTML lub gdy użytkownik kliknie odsyłacz).
Poniższy przykład rozszerza klasę HTMLHost w celu udostępnienia zachowania
normalnego
przy wywołaniu metody
window.open()
JavaScript. W przykładzie następnie zdefiniowano podklasę klasy HTMLLoader, która korzysta z niestandardowej implementacji klasy HTMLHost:
package
{
import flash.html.HTMLLoader;
public class MyHTMLHost extends HTMLHost
{
public function MyHTMLHost()
{
super(false);
}
override public function createWindow(opts:HTMLWindowCreateOptions):void
{
var initOptions:NativeWindowInitOptions = new NativeWindowInitOptions();
var bounds:Rectangle = new Rectangle(opts.x, opts.y, opts.width, opts.height);
var html:HTMLLoader = HTMLLoader.createRootWindow(true,
initOptions,
opts.scrollBarsVisible,
bounds);
html.stage.nativeWindow.orderToFront();
return html
}
}
Poniższy przykład definiuje podklasę klasy HTMLLoader, która przypisuje obiekt MyHTMLHost do jego właściwości
htmlHost
:
package
{
import flash.html.HTMLLoader;
import MyHTMLHost;
import HTMLLoader;
public class MyHTML extends HTMLLoader
{
public function MyHTML()
{
super();
htmlHost = new MyHTMLHost();
}
}
}
Szczegółowe informacje na temat klasy HTMLHost oraz metody
HTMLLoader.createRootWindow()
, które wykorzystano w tym przykładzie, zawiera sekcja
Definiowanie interfejsów użytkownika w stylu przeglądarki dla treści HTML
.