频道直达 - 专题 - 新闻 - 技巧 - 组网 - 开发 - 安全 - web编程 - 图像 - 操作系统 - 数据库 - 教育 - 旅游 - 健康 - 时尚 - 驱动 - 软件 - 游戏 - 多媒体 - ERP - 讨论组

Python anygui 项目预览

来源:qqread.com 作者:整理 出处:巧巧读书 2006-12-27 进入讨论组
上一页 1 2 3 

一些自身相同的代码

    这段运行在所有证明过的平台上的代码非常简单。在我的示例中,该程序的上半部分完全是实现一个 switch,允许从命令行手工选择要使用的后端。在产品代码中,您将不会希望有这样的选择;但对于早期的测试,就象我所做的这些,是很有帮助。然而请注意,这里显示的屏幕快照的这些所有测试完全在没有任何命令行选项的情况下运行 ― 后端的选择是自动的。让我们来看一下代码:


[anygui] 的‘button.py’文本应用程序


          import
         sys
          if
         len(sys.argv)==
        1
          or
         sys.argv[1].upper()==
          'DEFAULT'
        :
          from
         anygui 
          import
         Window, Button, Application, Label
          elif
         sys.argv[
        1].upper()==
          'TK'
        :
          from
         anygui.backends.tkgui 
          import
         Window, Button, Application, Label
          elif
         sys.argv[
        1].upper()==
          'MSW'
        :
          from
         anygui.backends.tkgui 
          import
         Window, Button, Application, Label
          elif
         sys.argv[
        1].upper()==
          'BEOS'
        :
          from
         anygui.backends.beosgui 
          import
         Window, Button, Application, Label
          elif
         sys.argv[
        1].upper()==
          'GTK'
        :
          from
         anygui.backends.gtkgui 
          import
         Window, Button, Application, Label
          elif
         sys.argv[
        1].upper()==
          'JAVA'
        :
          from
         anygui.backends.javagui 
          import
         Window, Button, Application, Label
          elif
         sys.argv[
        1].upper()==
          'WX'
        :
          from
         anygui.backends.wxgui 
          import
         Window, Button, Application, Label
          def
         say_hello():
          global
         bye
          print
          "Hello, world!"
    bye._set_enabled(
        1)
app = Application()
win = Window(width=
        150, height=
        150, title=
          "Beatles Lyric"
        )
win.add(Label(x=
        10, y=
        10, width=
        140, text = 
          "I don't know why you say..."
        ))
bye = Button(x=
        30, y=
        40, width=
        70, height=
        30, text=
        "Goodbye",
             action=
          lambda
        : win.destroy(), enabled=
        0)
win.add(bye)
win.add(Label(x=
        10, y=
        70, width=
        120, height=
        32, text = 
          "When I say..."
        ))
hi = Button(x=
        30, y=
        100, width=
        70, height=
        30, text=
          "Hello"
        , action=say_hello)
win.add(hi)
win.show()
app.run()
            

    应用程序的主框架只由四个步骤组成:(1)创建一个应用程序;(2)创建一个或多个窗口;(3)在窗口中添加一些窗口小部件;(4)调用 app.run() 事件循环。窗口小部件选项都作为命名的参数传递。

结束语

    在目前的 anygui alpha 版中已经有编写基本“获取一些数据,对它进行处理,并且显示一些结果”的应用程序所需要的一切东西。讨论列表中包含了许多关于更多细微差别的事件处理、视图模型等有趣的主题。此外, anygui API 还需要正式的地编制文档。然而在承诺方面,在很长一段时间内 anygui 与我看到的任何 Python 库相比,更令我兴奋。几乎很难想象在 Python 自身运行的地方,它能够透明地获取复杂的用户界面,这是多么的方便 ― 根本不需要为平台细节方面更改一行代码。

原文链接:http://www.ibm.com/developerworks/cn/linux/sdk/python/charm-21/index.html

文字:http://www.qqread.com/java/2006/12/c290449.html 更多文章 更多内容请看Python实用指南Python相关文章Python编程专题,或进入讨论组讨论。
上一页 1 2 3 
收藏此文】【 】【打印】【关闭
相关图文阅读
频道图文推荐
健 康 咨 询
时 尚 咨 询
巧巧读书宗旨
相关专题
最新论坛文章
站内各频道最新更新文档
站内最新制作专题
热门关键字导读
Photoshop教 程照片处理 照片制作 PS快捷键 抠图
计 算 机 故 障XP系统修复
艺 术 与 设 计设计 流媒体 设计欣赏 边框
计 算 机 安 全ARP
站内频道文章精选
巧巧电脑频道编辑信箱  告诉我们您想看的专题或文章