• gtk+3.0的环境配置及基于gtk+3.0的python简单样例


    /*********************************************************************
     * Author  : Samson
     * Date    : 06/25/2014
     * Test platform:
     *              Mint 15
     *              GNU bash, version 4.2.45
     * *******************************************************************/
    

    ps: Gtk3.0的在线类的说明:

    http://lazka.github.io/pgi-docs/Gtk-3.0/classes/

    非常多时候在Gnu Linux环境下会同一时候有gtk 2.0与gtk 3.0的存在,由于有的程序是基于2.0的,而有一些是基于3.0的,所以在进行基于gtk的编程时。要先进行版本号的切换。

    配置gtk的环境为gtk+-3.0, 而对应的2.0为s/gtk+-3.0/gtk+-2.0/g:

    若没有Gtk 3.0的,进行安装:

    ufo@ufo:~/test$ sudo apt-get install libgtk-3-dev


    ufo@ufo:~/test$ pkg-config --cflags gtk+-3.0


    -pthread -I/usr/include/gtk-3.0 -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/pixman-1 -I/usr/include/libpng12  

    ufo@ufo:~/test$ pkg-config --libs gtk+-3.0


    -lgtk-3 -lgdk-3 -latk-1.0 -lgio-2.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo-gobject -lpango-1.0 -lcairo -lgobject-2.0 -lglib-2.0  

    一个简单的样例,创建一个窗体,且在窗体中加入了一个开关button:
    #!/usr/bin/python
    from gi.repository import Gtk

    class MyWindow(object):
            def __init__(self,title,width,height):
                    self.window = Gtk.Window()
                    self.window.set_title(title)
                    self.window.set_default_size(width,height)
                    self.window.connect("destroy",lambda q:Gtk.main_quit())
                    self.switch = Gtk.Switch()

                    self.window.add(self.switch)
                    self.window.show_all()


            def main(self):
                    Gtk.main()

    if __name__ == '__main__':
            gui=MyWindow('myninewindow',600,400)
            gui.main()

    运行效果为:


    与2.0基本的差别是非常多类的首字母变为了大写的了,很多其它的差别对于俺这种刚開始学习的人来说,不好体会全然的 :_(


  • 相关阅读:
    后缀树到后缀自动机
    bzoj 4199 品酒大会
    BZOJ 4310 跳蚤
    BZOJ 4545 DQS的Trie
    BZOJ 3238 差异
    BZOJ 3277 串
    BZOJ 3926 诸神眷顾的幻想乡
    线程与进程
    SparkSql自定义数据源之读取的实现
    spark提交至yarn的的动态资源分配
  • 原文地址:https://www.cnblogs.com/zsychanpin/p/7366400.html
Copyright © 2020-2023  润新知