标题: PHPGTK实例项目 - 计算器
phpgtk
新手上路
Rank: 1



UID 1217
精华 0
积分 0
帖子 0
阅读权限 10
注册 2007-6-9
发表于 2007-6-18 20:40  资料  个人空间  短消息  加为好友 
PHPGTK实例项目 - 计算器

原文地址:http://bbs.phpres.com/viewthread.php?tid=1792


PHPGTK实例项目 - 计算器

主程序如下,完整的程序请在后面下载~~:




<?php
/*
* PHPEDIT
* Author: tonyvicky (VonkyCity)
* Email/MSN: sunshinesun_9@163.com
* WebSite: http://www.phpgtk.net
*/
include(dirname(__FILE__)."/config.php");
include(dirname(__FILE__)."/include/functions.php");
include(dirname(__FILE__)."/include/callback_01.php");
include(dirname(__FILE__)."/include/callback_02.php");
include(dirname(__FILE__)."/include/UI_class.php");
$now_page = 0;
$file_info = array();
// MainWindow's Menu
$menu_definition = array(
"文件" => array("_New|N", "_Open|O", "_Close", "<hr>", "_Save|S", "Save _As","<hr>", "E_xit"),
"编辑" => array("Cu_t", "_Copy", "_Paste", "<hr>", "Select _All", "<hr>", "_Undo|Z","_Redo|Y"),
"查看" => array(),
"搜索" => array(),
"工具" => array("_Run|T","_Make|M"),
"文档" => array(),
"帮助" => array(),
);
// UI PART
$window = new GtkWindow();
$window->set_default_size(800,600);
$window->set_title("PHPGEDIT");
$window->connect("destroy","quit");
$accel_group = new GtkAccelGroup();
$window->add_accel_group($accel_group);
$vbox = new GtkVBox(false,0);
$window->add($vbox);
$menu = new Menu($vbox, $menu_definition, $accel_group);
$toolbar = new GtkToolBar();
$vbox->pack_start($toolbar,false,false,0);
$toolbar->set_style(GTK_TOOLBAR_BOTH);
$toolitem01 = new GtkToolItem();
$toolitem02 = new GtkToolItem();
$toolitem03 = new GtkToolItem();
$toolitem04 = new GtkToolItem();
$toolitem05 = new GtkToolItem();
$NewButton = GtkButton::new_from_stock("gtk-new");
$NewButton->set_relief(GTK_RELIEF_NONE);
$NewButton->connect("clicked","Menu_New");
$OpenButton = GtkButton::new_from_stock("gtk-open");
$OpenButton->set_relief(GTK_RELIEF_NONE);
$OpenButton->connect("clicked","Menu_Open");
$SaveButton = GtkButton::new_from_stock("gtk-save");
$SaveButton->set_relief(GTK_RELIEF_NONE);
$SaveButton->connect("clicked","Menu_Save");
$CloseButton = GtkButton::new_from_stock("gtk-close");
$CloseButton->set_relief(GTK_RELIEF_NONE);
$CloseButton->connect("clicked","Menu_Close");
$QuitButton = GtkButton::new_from_stock("gtk-quit");
$QuitButton->set_relief(GTK_RELIEF_NONE);
$QuitButton->connect("clicked","Menu_Exit");
$toolbar->add($toolitem01);
$toolbar->add($toolitem02);
$toolbar->add($toolitem03);
$toolbar->add($toolitem04);
$toolbar->add($toolitem05);
$toolitem01->add($NewButton);
$toolitem02->add($OpenButton);
$toolitem03->add($SaveButton);
$toolitem04->add($CloseButton);
$toolitem05->add($QuitButton);
$vpaned = new GtkVPaned();
$vpaned->set_position(460);
$vbox->pack_start($vpaned, 1, 1);
$notebook = new GtkNoteBook();
$lang_mgr = new GtkSourceLanguagesManager();
$lang = $lang_mgr->get_language_from_mime_type("text/html");
$message_buffer = GtkSourceBuffer::new_with_language($lang);
$message = GtkSourceView::new_with_buffer($message_buffer);
$message->set_show_line_numbers(1);
$message->set_wrap_mode(1);
$message_buffer->set_highlight(1);
$message->set_editable(0);
$scrolled_message = new GtkScrolledWindow();
$scrolled_message->set_policy(Gtk::POLICY_AUTOMATIC, Gtk::POLICY_AUTOMATIC);
$scrolled_message->set_shadow_type(Gtk::SHADOW_IN);
$scrolled_message->add($message);
$vpaned->pack1($notebook,true,true);
$vpaned->pack2($scrolled_message,true,true);
$notebook->set_scrollable(true);
$notebook->connect('switch-page', 'onSwitchPage', $window);
$window->show_all();
//$vbox->destroy();
Gtk::main();
?>







下载该程序: http://www.phpgtk.net/upload/phpgedit.tar.gz

编译PHPGTK时应该加上 --enable-sourceview 参数
当然了,你必须确定你已经安装了libgtksourceview-dev这个包


顶部
 



当前时区 GMT+8, 现在时间是 2008-11-21 01:49

    本论坛支付平台由支付宝提供
携手打造安全诚信的交易社区 Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
清除 Cookies - 联系我们 - PHP开源项目网 - Archiver - WAP