perl 安装Gtk2::GladeXML后不能使用
时间:2010-12-12
来源:互联网
- #!/usr/bin/perl
- use Glib qw/TRUE FALSE/; #导入 Glib 模块
- use Gtk2 '-init'; #导入Gtk2模块。-init 参数相当于调用了C库中的gtk_init函数。它会作一些必须的初始化工作.
- use Gtk2::GladeXML;
-
- my $gladexml = Gtk2::GladeXML->new("1.glade"); #读入glade生成的xml文件
- $gladexml->signal_autoconnect_from_package('main'); #导入默认包中的信号
- my $window = $gladexml->get_widget('window1'); #得到window和button还有label三个组件
- my $stop = $gladexml->get_widget('stop');
- my $start = $gladexml->get_widget('start');
-
- #以下是对信号的处理
-
- $start->signal_connect( clicked => \&button_clicked);
- sub button_clicked{
- Win32::MsgBox("Hello Gtk2", 0, "Hello");
- }
-
- $stop-> signal_connect( clicked => sub{Gtk2->main_quit;}); #按下button时,会发出clicked的信号,现在的作用是退出.
- sub gtk_main_quit { Gtk2->main_quit();} #窗口在关闭时退出Gtk2的主循环。如果不加入这个回调函数,在窗口关闭后程序不会自动退出。
-
- $window->show_all(); #显示窗口
- Gtk2->main(); #进入Gtk2的事件
- exit 0;
运行后

作者: mitmax 发布时间: 2010-12-12
activeperl 5.10 ?
作者: 黑色阳光_cu 发布时间: 2010-12-12
得贴出 glade吧
下面这个 至少 运行 stop时没问题
复制代码
下面这个 至少 运行 stop时没问题
- <?xml version="1.0" encoding="UTF-8" standalone="no"?>
- <!DOCTYPE glade-interface SYSTEM "glade-2.0.dtd">
- <!--Generated with glade3 3.4.3 on Sun Dec 12 16:07:52 2010 -->
- <glade-interface>
- <widget class="GtkWindow" id="window1">
- <signal name="destroy" handler="gtk_main_quit"/>
- <signal name="delete_event" handler="gtk_main_quit"/>
- <child>
- <widget class="GtkFixed" id="fixed1">
- <property name="visible">True</property>
- <child>
- <widget class="GtkButton" id="stop">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <property name="label" translatable="yes">stop
- </property>
- <property name="response_id">0</property>
- </widget>
- <packing>
- <property name="x">60</property>
- <property name="y">80</property>
- </packing>
- </child>
- <child>
- <widget class="GtkButton" id="start">
- <property name="visible">True</property>
- <property name="can_focus">True</property>
- <property name="receives_default">True</property>
- <property name="label" translatable="yes">start
- </property>
- <property name="response_id">0</property>
- </widget>
- <packing>
- <property name="x">245</property>
- <property name="y">80</property>
- </packing>
- </child>
- </widget>
- </child>
- </widget>
- </glade-interface>
作者: perlw01f 发布时间: 2010-12-12
加上 use Win32 ();
start按钮也好使了
start按钮也好使了
作者: perlw01f 发布时间: 2010-12-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28