Alterando o conteúdo de um container
Neste exemplo, demonstramos como é possível alterar o conteúdo de um container. Neste caso, temos uma janela com três botões. Quando o usuário clica no botão do meio, seu conteúdo é alterado, ou seja, o botão do meio é substituído por um outro botão, contendo outro texto ("botao NOVO"). Isto é possível pois utilizamos um objeto GtkFrame como âncora do botão do meio e solicitamos que ele remova o seu conteúdo, por meio do método remove() e posteriormente adicione um novo conteúdo por meio do método add().
<?php
class Principal extends GtkWindow
{
private $frame;
function __construct()
{
parent::__construct();
$this->meuframe = new GtkFrame();
$a=new GtkButton('botao a');
$b=new GtkButton('botao b');
$c=new GtkButton('botao c');
$b->connect_simple('clicked', array($this, 'substitui'));
$this->meuframe->add($b);
$vbox=new GtkVBox;
$vbox->pack_start($a);
$vbox->pack_start($this->meuframe);
$vbox->pack_start($c);
parent::add($vbox);
parent::show_all();
}
function substitui()
{
$this->meuframe->remove($this->meuframe->get_child());
$this->meuframe->add(new GtkButton('botao NOVO'));
$this->meuframe->show_all();
}
}
new Principal;
Gtk::Main();
?>





