PHP-GTK的输入框不支持中文,所以在国内并没有市场!再无聊也不至于玩这个吧?!

解决方案 »

  1.   

    用过
    觉得不太方便
    期待php-gtk2.0同时觉得gtk在windows上太难看了
      

  2.   

    以前玩过一个PHPGTK做的RPG,蛮简单的~~ 呵呵
      

  3.   

    回复人: xuzuning(唠叨) ( ) 信誉:689  2005-06-15 16:51:00  得分: 0   
       PHP-GTK的输入框不支持中文,所以在国内并没有市场!
    再无聊也不至于玩这个吧?!
    ------------------------------------------
    因为自己做个小工具,想用GUI所以玩这个了~~~
    现在是玩意,以后可能就就不是啦~~~十年前的PHP 1.0不是也很简陋么?
      
     
      

  4.   

    如果在windows上的话,用winbinder吧。
    界面就是windows传统界面。
    还可以调用windows-api哦
      

  5.   

    phpgtk的输入框可以输入中文的啊
      

  6.   

    希望以后能有wxWindows的php绑定
      

  7.   

    等phpgtk2出来以后打算搞一个项目
    类似于xul
      

  8.   

    因为自己做个小工具,想用GUI所以玩这个了~~~
    现在是玩意,以后可能就就不是啦~~~这个一点不假!开始学php4.0.6时也弄过这个,只是因为对汉字支持不好所以就放弃了,再说界面也太霸道了点另外告诉你一下:dev-php(一个php开发工具)是可以直接开发phpgtk的。借助这个工具应该要方便些吧
      

  9.   

    DEVPHP我一直在用,这个东西就是在DEVPHP下写的~~~我用的是2.0.12版~~界面编写的思路跟WIN下的不太一样,总是要HBox和VBox套用多次才可以编写~~
      

  10.   

    在 linux 下还是不错的.
    和GTK的开发思路一致.用C写程序的可能比较喜欢.
    (c 下的面向对象方法也很棒滴)在Windows下需要先安装 gtk-runtime 稍微麻烦一些.
    用winbinder 可以.不过还处于测试阶段. (写过一些winbinder程序,不太稳定)
      

  11.   

    使GTK支持中文的方法:
    程序文件 phptools.php
    ----
    <?phpif (!extension_loaded('gtk')) {
    dl( 'php_gtk.' . PHP_SHLIB_SUFFIX);
    }Gtk::rc_parse('./gtk.rc');//读入中文配置.function delete_event()
    {
    return false;
    }function destroy()
    {
    Gtk::main_quit();
    }function hello()
    {
    global $window;
    print "Hello World!\n";
    $window->destroy();
    }/*
     * 创建顶级窗口,绑定回调函数
     */
    $window = &new GtkWindow();
    $window->connect('destroy', 'destroy');
    $window->connect('delete-event', 'delete_event');
    $window->set_border_width(10);/*
     * 创建按钮,绑定 clicked 信号到 hello() 函数
     */
    $button = &new GtkButton('唯她PHP工具!');
    $button->connect('clicked', 'hello');
    $window->add($button);$tt = &new GtkTooltips();
    $tt->set_delay(200);
    $tt->set_tip($button, 'Prints "Hello World!"', '');
    $tt->enable();/*
     * 显示.
     */
    $window->show_all();/* 主循环 */
    Gtk::main();?>
    ----
    中文资源文件. gtk.rc (搞过linux开发的大概都认识这个)
    ---
    style "defaultfont"
    {
    font = "-misc-SimSun-normal-r-normal-*-*-120-*-*-p-*-gb2312.1980-0"
    }
    class "GtkWidget" style "defaultfont"
    ---
      

  12.   

    winbinder是什么东东?楼上的楼上的楼上楼上的......
      

  13.   

    to netvt(唯她(为了泡老婆,努力学习LISP)) 
    那么一弄,就可以在文本框里输入中文了吗?
      

  14.   

    是吗?什么版本的?
    <?php
    if(!extension_loaded('gtk')) {
    dl( 'php_gtk.' . PHP_SHLIB_SUFFIX);
    }Gtk::rc_parse('./gtk.rc');//读入中文配置.---加与不加都一样显示汉字,都一样不能输入中文function destroy() {
    Gtk::main_quit();
    }function delete_event() {
    return false;
    }       $window = &new GtkWindow();
           //设置名字以辨别各个窗口
           $window->set_name('main window');
           //设置窗口的标题
           $window->set_title('对PHP-GTK的介绍');
           //设置窗口的大小
           $window->set_usize(260, 120);
           //调用destroy()函式来退出程序
           $window->connect('destroy', 'destroy');
           //调用delete_event()函式来关闭窗口
           $window->connect('delete-event', 'delete_event');
           //设置窗口的边框宽度
           $window->set_border_width(10);
           //设置窗口的位置
           $window->set_position(GTK_WIN_POS_CENTER);       //创建一个GtkFrame
           $frame = &new GtkFrame('经过简易修改的程序');
           //把GtkFrame放到GtkWindow里
           $window->add($frame);//创建一个GtkVBox,为常用的container
           $box1 = &new GtkVBox();
           //把GtkVBox放到GtkFrame里面
           $frame->add($box1);
           //创建一个GtkLabel并将它pack到GtkVBox里
           $label = &new GtkLabel();
           $box1->pack_start($label);
           //创建一个GtkHSeparator并将它pack到GtkVBox里
           $separator = &new GtkHSeparator();
           $box1->pack_start($separator);
           //创建一个GtkEntry并将它pack到GtkVBox里
           $entry = &new GtkEntry();
           $box1->pack_start($entry);
           //创建一个GtkButtonBox并将它add到GtkVBox里
           //因为GtkButtonBox也是一个无形的container,位置不重要,所以用add()
           $box2 = &new GtkHButtonBox();
           $box1->add($box2);$button = &new GtkButton('显示输入的字');
           //连接"clicked" signal到set_name()函式,附加$label和$entry两个widget
           $button->connect_object('clicked','set_name',$label,$entry);
           $box2->pack_start($button);
           $button = &new GtkButton('退出程序');
           //连接"clicked" signal到destroy()函式,将会关闭程序
           $button->connect('clicked','destroy');
           $box2->pack_start($button);       function set_name($label,$entry)
           {
              //用GtkEntry的get_text()方法从获取文字框内容
              $gettext=$entry->get_text();
              //用GtkLabel的set_text()方法设置新的文字
              $label->set_text($gettext);
           }       //显示窗口和所有child widget (不显示就看不到)
           //最后这两行一定要放在程序码的最后,否则什么都看不到
           $window->show_all();
           Gtk::main();
    ?>
      

  15.   

    winbinder是一个可以用PHP在windows下开发应用程序的PHP扩展
    做出的界面比GTK好多了,而且还可以调用WINDOWS API,
    下载包里的sample里有显示系统内存,主机名的例子。
    有兴趣的可以去下载
    http://pecl.php.net/package/WinBinder
      

  16.   

    不能显示中文可能是gtk_runtime和windows 版本的原因.
    我在win2k下用 gimp 也不能用中文的.在2003下可以.不是PHPGTK的原因.
    这个代码在我这里可以显中文,可以输入中文.
    点击"显示输入的字" 也可以在上面显示中文.为什么老说不能显示中文呢?
      

  17.   

    看测试帖图:
    http://phpexpert.51.net/phpgtk_cn.jpg老大要是再唠叨,就是你的不对了.
      

  18.   

    挺好的。我win2003 php4.3.9下按钮不显示文字,别说中文了
      

  19.   

    提示,cannot find module <IP-MIB>
    cannot find  <snmp-target-mib>等
    能显示gui界面
      

  20.   

    UI不是User Interface吗??好象不叫做用PHP写UI吧??称为用PHP写桌面程序更为贴切一些UI包括很多
    例如浏览器上的UI一般用HTML写,手机上的UI一般用图纸和电脑设计,然后用机器生产
      

  21.   

    个人比较喜欢winbinder,呵呵,不过winbinder还做不出鼠标右键菜单,这个比较郁闷。
      

  22.   

    一看,都是高手再讨论~~~
    前两天被人问到,php只能写web,我说不呀,也能写桌面呀,他说,瞎扯!
      

  23.   

    刚才研究了winbinder的source code,跟我想象的差不多~~~用ZENDAPI封装了WINAPI~~~在WINDOWS下应该有不俗表现,不过不知道有没有X-WINDOW下兼容的库~~要不然移植起来就死了~~PHP越玩越爽,呵呵,这几天又看了看ZENDAPI,也相当好玩~~
      

  24.   

    其实想想也能知道,要想php调用winapi也只能这么做,
    在中间加了一层,也就是winbinder的作用了.
    用c++调用winapi,然后返回给php函数,
    再封装成DLL,就成了php的扩展库了。