• <label id="pxtpz"><meter id="pxtpz"></meter></label>
      1. <span id="pxtpz"><optgroup id="pxtpz"></optgroup></span>

        當前位置:雨林木風下載站 > 技術開發教程 > 詳細頁面

        用PHP開發GUI(一個容易的例子)

        用PHP開發GUI(一個容易的例子)

        更新時間:2019-06-30 文章作者:未知 信息來源:網絡 閱讀次數:

        環境:W2k+php4.3.1+php/gtk0.5.2
        一個簡單的記事本(只可以打開文件進行修改)
        <?php
        set_time_limit (0); // 設置運行時間

        if (!class_exists ("gtk")) // 判斷是否有GTK模塊
        if (strtoupper (substr ($_SERVER["OS"], 0, 3)) == "WIN")
        dl ("php_gtk.dll");
        else
        dl ("php_gtk.so");

        $window = &new GtkWindow ();// 建一個窗口
        $window->set_uposition (100, 100);//窗口出現位置
        $window->set_usize ((gdk::screen_width()-200), (gdk::screen_height()-150));// 窗口大小
        $window->set_title ("WINDOWS"); // 設置窗口標題
        $window->connect_object ('destroy', array ('gtk', 'main_quit')); // 注冊窗口的事件

        $vbox = &new GtkVBox (); 
        $hbox = &new GtkHBox (); 
        $window->add ($vbox);


        $menuBar = &new GtkMenuBar (); // 創建菜單
        $vbox->pack_start ($menuBar, false, false, 0);

        $file = &new GtkMenuItem ("File");
        $menuBar->append ($file);

        $fileMenu = &new GtkMenu ();
        $open = &new GtkMenuItem ("Open");
        $save = &new GtkMenuItem ("Save");
        $line = &new GtkMenuItem ();
        $line->set_sensitive (true);
        $exit = &new GtkMenuItem ("Exit");
        $fileMenu->append ($open);
        $open->connect_object ('activate', 'showFileSelection');
        $fileMenu->append ($save);
        $save->connect_object ('activate', 'saveFile');
        $fileMenu->append ($line);
        $fileMenu->append ($exit);
        $exit->connect_object ('activate', array ('gtk', 'main_quit'));

        $file->set_submenu ($fileMenu);

        $scroll = &new GtkScrolledWindow ();
        $scroll->set_border_width (8);
        $scroll->set_policy (GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
        $hbox->pack_start ($scroll, true, true, 0);
        $vbox->pack_start ($hbox, true, true, 1);

        $text = &new GtkText ();
        $text->set_editable (true);
        $text->set_word_wrap (true);
        $scroll->add ($text);

        function showFileSelection () // 文件選擇函數
        {
        $file = &new GtkFileSelection ("File Selection");
        $ok_button = $file->ok_button;
        $ok_button->connect ('clicked', 'openFile', $file);
        $ok_button->connect_object ('clicked', array ($file, 'destroy'));
        $cancel_button = $file->cancel_button;
        $cancel_button->connect_object ('clicked', array ($file, 'destroy'));
        $file->show ();
        }

        $filePath = null;
        function openFile ($button, $f)// 打開文件的函數
        {
        GLOBAL $text, $save, $filePath;
        $filePath = $f->get_filename ();
        if (is_file ($filePath))
        {
        $fp = fopen ($filePath, 'r');
        while (!feof ($fp))
        $str .= fgets ($fp, 1024);
        $text->insert (null, null, null, $str);
        fclose ($fp);
        return $filePath;
        }
        }

        function saveFile ()// 保存文件的函數
        {
        GLOBAL $filePath, $text;
        if (is_file ($filePath))
        {
        $str = $text->get_chars (0, -1);
        $fp = fopen ($filePath, 'w');
        fwrite ($fp, $str);
        fclose ($fp);
        }
        return;
        }

        $window->show_all (); // 顯示窗體內的所有控件
        gtk::main ();// 最重要的一句,不可少的
        ?>

        溫馨提示:喜歡本站的話,請收藏一下本站!

        本類教程下載

        系統下載排行

        主站蜘蛛池模板: 成人亚洲国产va天堂| 亚洲人成色7777在线观看不卡| 亚洲中文字幕无码一区二区三区| 亚洲AV无码之国产精品| 最近免费中文字幕大全| 精品国产日韩久久亚洲| 啦啦啦高清视频在线观看免费 | 2019中文字幕在线电影免费 | 国产亚洲精品a在线观看| 免费一级特黄特色大片 | 亚洲av永久无码精品网站| 久久99免费视频| 亚洲另类激情综合偷自拍| 久9久9精品免费观看| 91亚洲精品视频| 毛片免费在线视频| 亚洲av色香蕉一区二区三区蜜桃| 国产成人高清精品免费软件 | 亚洲免费一级视频| 青青草国产免费久久久91| 国内成人精品亚洲日本语音| 亚洲欧洲国产成人综合在线观看| 二区久久国产乱子伦免费精品| 亚洲Av永久无码精品三区在线 | 国产在线精品观看免费观看| 亚洲va无码va在线va天堂| 免费黄色福利视频| 亚洲成av人片在www鸭子| 亚洲免费在线观看| 91热久久免费精品99| 亚洲av日韩精品久久久久久a| 最新国产AV无码专区亚洲| 亚洲第一网站免费视频| 亚洲6080yy久久无码产自国产| 久久夜色精品国产亚洲av| 国产成人精品免费视频大| 亚洲a∨无码一区二区| 久久亚洲综合色一区二区三区 | 国产92成人精品视频免费| 亚洲AV无码XXX麻豆艾秋| 亚洲av永久无码精品漫画 |