Bücher online kostenlos Kostenlos Online Lesen
Adobe Air (wiwobooks.com Release)

Adobe Air (wiwobooks.com Release)

Titel: Adobe Air (wiwobooks.com Release) Kostenlos Bücher Online Lesen
Autoren:
Vom Netzwerk:
ist in jedem Fall rechenintensiv, sodass ein sehr großes, transparentes Fenster bereits zu einer hohen Prozessorlast durch Ihre Anwendung führen kann. Außerdem überdecken in einigen Linux-Distributionen transparente Bereiche andere Fenster, sodass diese keine Mausklicks mehr empfangen können. Auch können abhängig von der Einstellung des Fenstermanagers und/oder des Benutzerkontos unter Linux transparente Bereiche auch nicht transparent, sondern wie transparent vor schwarzem Hintergrund dargestellt werden.
    Wenn Sie intensiven Gebrauch von Transparenz machen wollen, empfiehlt es sich, mithilfe der Eigenschaft NativeWindow.supportsTransparency die Unterstützung von Transparenz zu prüfen und gegebenenfalls im Programm in eine alternative Umsetzung ( Fallback ) zu verzweigen.
    Die Einstellungen für System-Chrome können ausschließlich für neue Fenster festgelegt werden. Daraus ergeben sich für das erste Fenster einer Anwendung und alle weiteren Fenster unterschiedliche Ausgangssituationen. Für das Ausgangsfenster der AIR-Anwendung müssen die Einstellungen in der Anwendungsbeschreibungsdatei vorgenommen werden, für alle weiteren Fenster mithilfe eines Hilfsobjekts der Klasse NativeWindowInitOptions , das dem neuen Fenster bei der Instantiierung übergeben wird. Nachfolgend werden beide Wege beschrieben.
9.7.2 Fenster-Chrome für das Ausgangsfenster deaktivieren
    Wie alle Einstellungen des Ausgangsfensters der Anwendung befinden sich die Einstellungen für das Fenster-Chrome in der Anwendungsbeschreibungsdatei innerhalb des Tags . Das Element für System-Chrome heißt, wenig überraschend, , das für den transparenten Hintergrund .
    Lösungsweg
1. Element initialWindow in der Anwendungsbeschreibungsdatei lokalisieren
2. Element systemChrome und gegebenenfalls transparent einstellen
    Stolperfallen/Caveats
    Wenn Sie das System-Chrome deaktivieren, bedenken Sie, dass Ihre AIR-Anwendung über keine Schnittstelle zum Benutzer mehr verfügt, mit der dieser per Mausinteraktion das Fenster schließen oder verändern könnte. Für die Bereitstellung einer solchen UI sind in einem solchen Fall Sie zuständig.
    So geht es
    Öffnen Sie die Anwendungsbeschreibungsdatei der Anwendung mit Ihrem bevorzugten Editor für XML-Dateien. Suchen Sie innerhalb der Datei nach dem XML-Element sowie darin nach den Elementen und . Falls eines der Tags mit einem XML-Kommentar auskommentiert ist, entfernen Sie das beginnende ( ). Setzen Sie in das Tag den Wert none ein, wenn Sie das System-Chrome deaktivieren wollen, bzw. standard , wenn Sie es aktivieren wollen. Um den Fensterhintergrund transparent zu machen, setzen Sie in das Tag den Wert true :
    
none
true


9.7.3 Fenster-Chrome für weitere Anwendungsfenster ausschalten
    Wenn Sie nicht das Ausgangsfenster beeinflussen wollen, sondern ein beliebiges anderes innerhalb Ihrer Anwendung, so erstellen Sie dieses programmatisch und beeinflussen dessen System-Chrome-Einstellungen mithilfe eines Hilfsobjekts bei der Instantiierung des Fensters.
    Lösungsweg
Erstellen einer Instanz der Klasse NativeWindowInitOptions
    Einstellen der Eigenschaften systemChrome und gegebenenfalls transparent des NativeWindowInitOptions -Objekts
NativeWindow -Instanz für neues Fenster erstellen und dabei die NativeWindowInitOptions -Instanz als (erforderlichen) Parameter übergeben
So geht es
Das folgende Listing illustriert die Verwendung der NativeWindowInitOptions - Klasse in ActionScript-Quelltext:
    import flash.display.NativeWindow;
import flash.display.NativeWindowInitOptions;
import flash.display.NativeWindowType;
import flash.display.NativeWindowSystemChrome;
// Init-Optionsobjekt instantiieren
var initOpts:NativeWindowInitOptions = new NativeWindowInitOptions(); // Typ des neuen Fensters einstellen
initOpts.type = NativeWindowType.NORMAL;
// Standard-Systemchrome ausschalten
initOpts.systemChrome = NativeWindowSystemChrome.NONE;
// Hintergrund des neuen Fensters transparent einstellen initOpts.transparent = true;
// neue NativeWindow-Instanz erstellen,
// initOpts als Parameter übergeben
var newWin:NativeWindow = new NativeWindow(initOpts);
/* weiterer Quelltext zur

Weitere Kostenlose Bücher