Autor Zpráva
DannaD
Profil *
Zdravím.

Mám na stagei vytvořený MovieClip se jménem instance "platno".

Chci do toho plátna malovat kurzorem myši. Slouží k tomu metody třídy graphics - lineTo, moveTo. Předtím ještě nastavuji pomocí lineStyle pár drobných parametrů.

Došel jsem zatím k něčemu takovému - přičemž se mi stále NIC nevykresluje.

Zvýrazněné části jsou místa, kde nejspíš něco nefunguje správně. Na MouseDown a MouseUp to správně nastavuje proměnnou na 1 či 0 (abych mohl určit, jestli mám vykreslovat, nebo nemám). Řešení pomocí "Sprite" není vhodné, protože se musí addChildovat body a později to začne přerušovat čáru.

import flash.events.MouseEvent;
import flash.display.Graphics;

var Barva:Number = 0x000000;
var Sirka:Number = 5;
var Typ:String = "CapsStyle.ROUND";

var Kresli:Number = 0;

trace(Sirka+Typ+Barva);

typKruh.addEventListener(MouseEvent.CLICK, function()
{
    
    Typ = "CapsStyle.ROUND";
    trace(Typ);
    
}                         
);

typCtverec.addEventListener(MouseEvent.CLICK, function()
{
    
    Typ = "CapsStyle.SQUARE";
    trace(Typ);
}
);

platno.addEventListener(MouseEvent.MOUSE_DOWN, zacniKreslit);
platno.addEventListener(MouseEvent.MOUSE_UP, prestanKreslit);
platno.addEventListener(MouseEvent.MOUSE_MOVE, kresli);


function zacniKreslit(e:MouseEvent)
{
        
        Kresli = 1;
        graphics.lineStyle(3, 0x000000);
        graphics.moveTo(stage.mouseX, stage.mouseY);
        
}

function prestanKreslit(e:MouseEvent)
{
    Kresli = 0;    
}

               
                       
function kresli(e:MouseEvent)
{
    
    
    if(Kresli == 1)
    {
    trace("kreslim");
    graphics.lineTo(stage.mouseX, stage.mouseY);
    trace(stage.mouseX, stage.mouseY);
    }

}

Poradíte mi s tím někdo prosím?
weroro
Profil
Skús si pozrieť logiku kreslenia z toho môjho tutoriálu. Je to síce AS2, ale okrem eventov, je tam prakticky všetko rovnaké ako v tvojom AS3 riešení http://www.hojko.com/post1647293.html#p1647293
DannaD
Profil *
weroro:
Děkuji, to by mi teď už chodilo.

Myslíš, že bych tě mohl poprosit ještě o pomoc s komponentou slider?

Vložím si ji normálně na stage, nastavím
direction: horizontal
enable: ano
maximum: 100
minimum: 1
snapInterval: 10
tickInterval: 10
value: 100
visible ano

A není možný po spuštění posouvat s posuvníkem slideru, když to "changeHandlerem" tracuju
sirkaStetce.addEventListener(SliderEvent.CHANGE,sliderHandler);
function sliderHandler(event:SliderEvent)
{
    trace(event.value);
    //Sirka = event.value;    
}

Píše to po každém kliknutí či kliknutí a puštění -> "0"

Nevíš co s tím?

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: