Tk界面组件学习心得.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Tk界面组件学习心得 BLT, Iwidget, BWidget套件分析与讲解 写在前面的话 首先我想要强调一些关于学习tcl/tk以及相关套件的建议。 学会使用Vi, Vi可以使你在命令行模式下的编辑效率提高很多。 我以前学习linux中的时候看到的一句话,“自助者天助“,学会使用man命令查 找相关command的方法(IWidget, BWidget, man不到,套件包不提供,不过网 上可以找到html版的man文件,结束语中有网页链接)。 BLT, Iwidget, BWidget,都提供了不错的demos,可以通过demos的演示了解套 件中的组件功能。 套件包简单介绍 BLT BLT组件中最强大的功能是它的图形组件功能,graph, barchart, stripchart:这3个组 件的功能是BLT中最大的亮点。它还包括标签页(tabset, tabnotebook)和树状结构(treeview, tree)组件。Busy组件也不错,其实现的功能是当一个程序在运行时,你不希望界面接受鼠 标的点击,会显示一个忙状态的鼠标指针。BLT是基于C编写的。 Iwidget 由于Iwidget是incrtk的一个组件,其全名为incr Widgets,很明显,其具有面向对象的 封装特性,其组件之间具有继承关系。此组件库的功能非常强大,组件多达51个,组件从 简单的labeled-entry (带有标签的输入框)组件到复杂的HTML页的显示组件都有涉及,后 面的描述会看到,它具有许多已经直接可以使用的常用组件,例如文件选収组件 (fileselectionbox),带卷动条的HTML页面(scrolledhtml)等等。它基于incrtk,所以它也 是基于C的组件库。 BWidget 它是基于tel编写的组件,并且它的组件是分为3类的,分别为简单组件,管理组件和 复合组件。 简单组件是对tk屮原有的一些命令的衍生和加强,例如Button, Entry等。 管理组件是将简单组件的一些衍生,例如简单实现多按钮的ButtonBoXo 复合组件是我们需要重点关注的,它和IWidget-样直接实现了一些直接使用的复杂组 件,例如 SelectFont, SelectColor 等。 组件基本使用方法 首先,需要将组件库加入到tk的命令屮,分别为以下命令 BLT: package require BLT Iwidgets: package require Iwidgets BWidget: package require BWidget 本文后面的代码,都需要加上前面的语句,将组件库包含进去。 基本命令,创建组件方法都和tk中的命令一样,如下面一行所示。 command Pathname option value option value ... 后血还可以通过如下命令进行修改 Pathname xxx 其中xxx表示每个命令一些特定的操作,例如configure, add, get等(请参看各个组件 的man文件),下而是以各个套件的一个命令为例,来看对套件屮的命令进行操作的方法。 1. BLT 下面为--段实现图形的代码,使用的graph命令。 # Create a new graph. Plotting area is black bit::graph ?g -plotbackgroud black pack .g # Change the title ?g configure -title “M); Plot Create a new element named Tinel ?g element create line I \ -xdata { 0.2 0.4 0.6 0.8 1.0 1.2 1.4 1.6 1.8 2.0 }\ -ydata { 26.18 50.46 72.85 93.31 111.86 1247143.14 155.85 166.60 175.38 } IWidget 下面的代码为使用lwidget::buttonbox实现多按钮系统的一段代码。 ^Create ButtonBox iwidgets::buttonbox .bb #add button ?bb add OK -text OK -command pids OK ?bb add Apply -text Apply -command Splits Apply ?bb add Cancel -text Cancel -command puts CanceC ^binding buttonbox pack .bh -expand yes -fill both BWidget 下血的代码同样是利用ButtonBox实现的多按钮系统。 ^Create B

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档