«

»

Eyl
09

PHP Faces ile olay yönelimli programlama Facet Controller

Facet FacesController u genişleten ve C# VB Delphi dekine benzer bir şekilde event handler (olay yakalama) mekanizmasına  izin veren bir controller biçimidir.

Olay yakalama için sadece metot yazmanız kafidir. metot isimleri bileşenadı olayadı şeklindedir.

örnek olarak aşağıdaki gibi bir faces view tanımlamamız olsun

<pre>   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
    <head>
        <title>The Button</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    </head>
   <body>
<faces>
<@import prefix="f" taglib="phpf.ui.button"/>
<f:button name="deneme" onclick=ajaxevent" text="Click me"/>
</faces>
    </body>
</html></pre>

deneme buttonuna  tıklama olayını yakalayabilmemiz için denemeClicked($evt) mettodunu yazıyoruz.

Örnek facete

<?php

import("phpf.controllers.facete");
class Facetetest extends Facete
{
function Facetetest()
{

parent::Facete();
$this->render("view.phpf");
}

protected function denemeClicked($evt)
{
$evt->getComponent()->setText("You Cliked");
$this->AjaxResponse();
}
}
?>

olayları yakalayacak üye metotların protected ya da public olaması gereklidir. private üyeler erişilemeyeceği için çalışmazlar.

facete ile birlikte kullanabileceğiniz olay yakalama metotları şunlardır ve  metot isimlerinin başına bileşen ismini eklemeyi unutmayın.

  • Clicked
  • Changed
  • dbClick
  • mouseUp
  • mouseOver
  • mouseOut
  • mouseDown
Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Shout it
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter
Google Buzz (aka. Google Reader)

Bir Cevap Yazın

E-Posta adresiniz yayınlanmayacaktır.


*

Bu HTML etiket ve tanımlayıcılarını kullanabilirsiniz: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>