Python+GtkBuilder+Gtk+

8 篇文章 0 订阅

一、使用Glade3创建GtkBuilder格式,并保存hello_gtkBuilder.glade,内容如下:

 <?xml version="1.0" encoding="UTF-8"?> 

<interface> 

<requires lib="gtk+" version="2.16"/>

 <!-- interface-naming-policy project-wide -->

 <object class="GtkWindow" id="mainWindow">

 <child> 

<object class="GtkHButtonBox" id="hbuttonbox"> 

<property name="visible">True</property>

 <child> 

  <object class="GtkButton" id="cmdOK">

 <property name="label">gtk-ok</property> 

  <property name="visible">True</property>

 <property name="can_focus">True</property>

 <property name="receives_default">True</property>

 <property name="use_stock">True</property>

 <signal name="clicked" handler="on_cmdOK_clicked"/>

 </object>

 <packing>

 <property name="expand">False</property>

 <property name="fill">False</property> 

<property name="position">0</property> 

</packing> 

</child> 

<child> 

<object class="GtkButton" id="cmdCancel"> 

<property name="label" translatable="yes">Cancel</property>

 <property name="visible">True</property>

 <property name="can_focus">True</property>

 <property name="receives_default">True</property>

 <signal name="clicked" handler="on_cmdCancel_clicked"/>

 </object>

 <packing>

 <property name="expand">False</property>

 <property name="fill">False</property>

 <property name="position">1</property>

 </packing>

 </child>

 </object>

 </child>

 </object>

 </interface>

 

 

二、创建hello_gtkBuilder.py ,内容如下:

#!/usr/bin/env python 

 # hello_gtkBuilder.py 

 importpygtk 

 pygtk.require('2.0'

 importgtk 

 classHelloWorld:

 def__init__(self): 

     self.gladeMain = gtk.Builder() 

     self.gladeMain.add_from_file("hello_gtkBuilder.glade"

     self.gladeMain.connect_signals(self)

     self.mainWindow = self.gladeMain.get_object("mainWindow"

     self.mainWindow.set_position(gtk.WIN_POS_CENTER_ALWAYS

     self.mainWindow.set_default_size(210, 60

     self.mainWindow.show() 

def on_cmdCancel_clicked(self, *args): 

     print"on_cmdCancel_clicked" 

     gtk.main_quit() 

 def on_cmdOK_clicked(self, *args): 

     print"on_cmdOK_clicked occurred: Hello World" 

     self.mainWindow.set_title("Hello World"

 def main(self): 

    gtk.main() 

 if__name__ == "__main__"

    hello = HelloWorld() 

   hello.main()


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值