Forum und email

SWFButton->__construct()

(PHP 5)

SWFButton->__construct() — Creates a new Button

Description

SWFButton
SWFButton __construct ( void )
Warning

Αυτή η συνάρτηση είναι ΔΟΚΙΜΑΣΤΙΚΗ. Η συμπεριφορά της, το όνομα της και οτιδήποτε άλλο είναι τεκμηριωμένο σχετικά με αυτή την συνάρτηση μπορεί να αλλάξει χωρίς ειδοποίηση σε μελλοντικές εκδόσεις της PHP. Χρησιμοποιήστε αυτή την συνάρτηση με δικό σας ρίσκο.

Creates a new Button.

Παραδείγματα

This simple example will show your usual interactions with buttons : rollover, rollon, mouseup, mousedown, noaction.

Example#1 Usual interactions with buttons

<?php

$f 
= new SWFFont("_serif");

$p = new SWFSprite();

function 
label($string
{
  global 
$f;

  
$t = new SWFTextField();
  
$t->setFont($f);
  
$t->addString($string);
  
$t->setHeight(200);
  
$t->setBounds(3200200);
  return 
$t;
}

function 
addLabel($string
{
  global 
$p;

  
$i $p->add(label($string));
  
$p->nextFrame();
  
$p->remove($i);
}

$p->add(new SWFAction("stop();"));
addLabel("NO ACTION");
addLabel("SWFBUTTON_MOUSEUP");
addLabel("SWFBUTTON_MOUSEDOWN");
addLabel("SWFBUTTON_MOUSEOVER");
addLabel("SWFBUTTON_MOUSEOUT");
addLabel("SWFBUTTON_MOUSEUPOUTSIDE");
addLabel("SWFBUTTON_DRAGOVER");
addLabel("SWFBUTTON_DRAGOUT");

function 
rect($r$g$b
{
  
$s = new SWFShape();
  
$s->setRightFill($s->addFill($r$g$b));
  
$s->drawLine(6000);
  
$s->drawLine(0600);
  
$s->drawLine(-6000);
  
$s->drawLine(0, -600);

  return 
$s;
}

$b = new SWFButton();
$b->addShape(rect(0xff00), SWFBUTTON_UP SWFBUTTON_HIT);
$b->addShape(rect(00xff0), SWFBUTTON_OVER);
$b->addShape(rect(000xff), SWFBUTTON_DOWN);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(1);"),
          
SWFBUTTON_MOUSEUP);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(2);"),
      
SWFBUTTON_MOUSEDOWN);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(3);"),
      
SWFBUTTON_MOUSEOVER);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(4);"),
      
SWFBUTTON_MOUSEOUT);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(5);"),
      
SWFBUTTON_MOUSEUPOUTSIDE);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(6);"),
      
SWFBUTTON_DRAGOVER);

$b->addAction(new SWFAction("setTarget('/label'); gotoFrame(7);"),
      
SWFBUTTON_DRAGOUT);

$m = new SWFMovie();
$m->setDimension(40003000);

$i $m->add($p);
$i->setName("label");
$i->moveTo(4001900);

$i $m->add($b);
$i->moveTo(400900);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>

This simple example will enables you to drag draw a big red button on the windows. No drag-and-drop, just moving around.

Example#2 Drag example

<?php

$s 
= new SWFShape();
$s->setRightFill($s->addFill(0xff00));
$s->drawLine(1000,0);
$s->drawLine(0,1000);
$s->drawLine(-1000,0);
$s->drawLine(0,-1000);

$b = new SWFButton();
$b->addShape($sSWFBUTTON_HIT SWFBUTTON_UP SWFBUTTON_DOWN SWFBUTTON_OVER);

$b->addAction(new SWFAction("startDrag('/test', 0);"), // '0' means don't lock to mouse
      
SWFBUTTON_MOUSEDOWN);

$b->addAction(new SWFAction("stopDrag();"),
      
SWFBUTTON_MOUSEUP SWFBUTTON_MOUSEUPOUTSIDE);

$p = new SWFSprite();
$p->add($b);
$p->nextFrame();

$m = new SWFMovie();
$i $m->add($p);
$i->setName('test');
$i->moveTo(1000,1000);

header('Content-type: application/x-shockwave-flash');
$m->output();
?>