Korzystanie z klasy System

Flash Player 9 i nowsze wersje, Adobe AIR 1.0 i nowsze wersje

Klasa System zawiera metody i właściwości umożliwiające programowi interakcję z systemem operacyjnym użytkownika i sprawdzanie, ile pamięci zajmuje w danej chwili środowisko wykonawcze Metody i właściwości klasy System umożliwiają także wykrywanie zdarzeń imeComposition , nakazanie środowisku wykonawczemu załadowania zewnętrznego pliku tekstowego przy użyciu bieżącej strony kodowej użytkownika lub jako tekstu Unicode, a także wpisywanie treści do schowka użytkownika.

Pobieranie informacji o systemie użytkownika w czasie wykonywania programu

Odczytując stan właściwości System.totalMemory , można określić ilość pamięci (w bajtach) używaną w danej chwili przez środowisko wykonawcze Właściwość ta umożliwia monitorowanie wykorzystania pamięci i optymalizowanie aplikacji na podstawie zmian poziomu wykorzystania pamięci. Na przykład, jeśli określony efekt wizualny powoduje znaczny wzrost zużycia pamięci, można go zmodyfikować lub całkowicie wyeliminować.

Właściwość System.ime to odwołanie aktualnie zainstalowanego edytora IME (Input Method Editor). Ta właściwość umożliwia wykrywanie zdarzeń imeComposition ( flash.events.IMEEvent.IME_COMPOSITION ) przy użyciu metody addEventListener() .

Trzecia właściwość klasy System to useCodePage . Gdy właściwość useCodePage jest ustawiona na true , środowisko ładuje zewnętrzne pliki tekstowe przy wykorzystaniu tradycyjnej strony kodowej systemu operacyjnego. Jeśli ta właściwość jest ustawiona na false , środowisko wykonawcze interpretuje plik zewnętrzny jako tekst Unicode.

W przypadku ustawienia dla właściwości System.useCodePage wartości true należy pamiętać o tym, że tradycyjna strona kodowa systemu operacyjnego musi zawierać znaki używane w zewnętrznym pliku tekstowym — tylko wówczas możliwe będzie wyświetlanie tekstu. Na przykład: jeśli załadowany zostanie zewnętrzny plik tekstowy, który zawiera znaki języka chińskiego, nie pojawią się one w systemie Windows o angielskiej stronie kodowej, ponieważ ta strona kodowa nie zawiera znaków języka chińskiego.

Aby mieć pewność, że użytkownicy wszystkich platform będą mogli wyświetlać zewnętrzne pliki tekstowe używane w aplikacjach, należy kodować wszystkie zewnętrzne pliki tekstowe jako Unicode i pozostawić dla właściwości System.useCodePage wartość false . Dzięki temu środowisko interpretuje tekst jako zapisany w kodzie Unicode.

Zapisywanie tekstu w schowku

Klasa System zawiera metodę o nazwie setClipboard() , która umożliwia środowisku wykonawczemu Flash wpisywanie określonego ciągu znaków do schowka użytkownika. Ze względów bezpieczeństwa nie istnieje metoda Security.getClipboard() , ponieważ potencjalnie umożliwiałaby ona szkodliwym witrynom dostęp do danych ostatnio skopiowanych do schowka użytkownika.

Poniższy kod ilustruje sposób kopiowania komunikatu o błędzie do schowka użytkownika po wystąpieniu błędu. Komunikat o błędzie może być przydatny, jeśli użytkownik chce zgłosić błąd w aplikacji.

private function securityErrorHandler(event:SecurityErrorEvent):void 
{ 
    var errorString:String = "[" + event.type + "] " + event.text; 
    trace(errorString); 
    System.setClipboard(errorString); 
}

Flash Player 10 i AIR 1.0

Klasa Clipboard umożliwia odczytywanie i zapisywanie danych w schowku w odpowiedzi na zdarzenie wywołane przez użytkownika. W środowisku AIR zdarzenie wywołane przez użytkownika nie jest wymagane, aby kod działający w obszarze izolowanym aplikacji miał dostęp do schowka.