Objekt Selection:

Použitelné metody

Objekt Selection slouží zejména k selektování (výběru) textu, výběrů movie clipů a buttonů.

.
metoda její funkce
addListener připojí objekt (funkci) reagující na výběr pole (setFocus)
getBeginIndex index prvního znaku vyselektovaného textu (pokud není vyselektován žádný text, metoda vrátí -1)
getCaretIndex udává pozici (blikajicího) kurzoru v textu (vrací -1, pokud kurzor v textu není)
getEndIndex index posledního znaku vyselektovaného textu (pokud není vyselektován žádný text, metoda vrátí -1)
getFocus udává jméno (adresu) právě vybraného objektu na scéně ve stringové hodnotě (vrací null, pokud není vybrán žádný).
removeListener odebere listener
setFocus(adresa_pole) vybere určené textové pole
setSelection(od,do) vyselektuje určitou část textu ve vybraném poli (např. metodou setFocus)
události kdy se spustí
onSetFocus připojuje se k listener, při změně výběru se provede určená funkce

Příklad

Vytvořte si na hlavní scéně jedno inputové pole. Pojmenujte jej "pole", do Var zadejte "veta". Do prvního snímku poté vložte tento skript:

veta="text, který se má zobrazovat v textovém poli";

Dále vytvořte prázdný movie clip, vložte jej do hlavní scény a připojte k němu následující skript:

onClipEvent(enterFrame) {
  x=Selection.getCaretIndex();
  Selection.setSelection(0,x);
}

Příkazy se budou provádět každý frame. Nejprve se proměnné "x" přiřadí index blikajícího kurzoru a poté se vyselektuje část textu od počátku do místa, kde se nachází kurzor (proměnná "x").

Nyní editujte prázdný movie clip a vytvořte v něm nějakou animaci. Na hlavní scéně k němu přidejte tento skript(stále do události onClipEvent):

if (Selection.getFocus()=="_level0.pole") {
    play();
  } else {
    gotoAndStop(1);
}

Pokud nyní vyberete textové pole "pole", začne se animace přehrávat. Jakmile bude vybráno jiné pole (nebo nebude vybráno žádné), přesune se animace na první snímek.

Další příklad (a hlavně lepší) na příkazy setFocus a setSelection v kapitole Objekt String - hledání v textu

prohlédnout
stáhnout

Příklad s listener

Ještě popíši, jak se pracuje s listener. Vyberte první snímek na hlavní časové ose a přidejte následující skript:

vyber=new Object();
vyber.onSetFocus=function() {
  _root.animace._y+=20;
}
Selection.addListener(vyber);

Nejdříve vytvoříte nový generický objekt "vyber", kterému vytvoříte metodu (funkci), která posune klip "animace" o 20 pixelů dolů, jakmile bude vybráno jiné pole, než je vybráno. Poté celý tento vámi vytvořený objekt (včetně metody) přiřadíte objektu Selection.

Když nyní v animaci kliknete na jedno z textových polí, posune se animace o 20 pixelů dolů. Když kliknete na to samé textové pole, nic se nestane, až když kliknete na druhé textové pole, animace se opět posune.

prohlédnout
stáhnout
další téma - Objekt Stage

hlavní stránka # o tento web se stará Lukáš Havrlant # lukas.havrlant@gmail.com