【问题标题】:PHP GTK button clickPHP GTK 按钮单击
【发布时间】:2011-04-17 07:02:12
【问题描述】:

我正在尝试让这个按钮改变背景 你点击它,这就是我有:

<?php
if (!class_exists('gtk')) {
    die("Please load the php-gtk2 module in your php.ini\r\n");
}
function loc(){
  return dirname(__FILE__);
};
$wnd = new GtkWindow();
$wnd->set_title('Picture Viewer');
$wnd->set_resizable(false);
$wnd->set_position(GTK_WIN_POS_CENTER);
$wnd->connect_simple('destroy', array('gtk', 'main_quit'));



$im = GtkImage::new_from_file(loc()."\bg.jpg");
$btn = new GtkButton;
$btn->set_image($im);

$btn->clicked(function(){
  $im = GtkImage::new_from_file(loc()."\bg2.jpg");
  $btn->set_image($im);
});

$wnd->add($btn);

$wnd->show_all();
Gtk::main();
?>

为什么这不起作用?

我认为 $btn-&gt;clicked(function(){ 部分 是问题所在。

【问题讨论】:

    标签: php image button gtk gtk2


    【解决方案1】:

    $btn-&gt;clicked 实际上发出点击信号。你想要做的是连接一个函数到信号:

    $btn->connect('clicked', 'change_background');
    
    function change_background($whichbutton)
    {
        $im = GtkImage::new_from_file(loc()."\bg2.jpg");
        $whichbutton->set_image($im);
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-06-15
      • 2011-10-21
      • 1970-01-01
      • 2018-10-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多