PowerBuilder实用技巧八则(一)

来源:软件水平考试    发布时间:2012-11-05    软件水平考试视频    评论

  本文介绍的方法和技巧都是笔者在实践中的一点积累,在此拿出来与大家一起分享。希望在阅读本文后会对您有所帮助或启发。文中如有任何不足之处还望同行们给予指教。在此,我先道声谢。

  一、实现运行窗口居中

  众所周知,PowerBuilder 7.0在以前的版本中提供了图形化的预览工具,可以很方便的在设计阶段实现窗口居中。但是,到了7.0似乎该项工具被取消了,也没有什么属性来设置,至少我没有找到。每当我们需要将窗口居中的时候只有一点一点地调整它的X,Y值,这一点十分让人头痛。出于无奈,只好通过编程实现。我们只在每个需要居中的窗口的Open事件中写上这些代码就会实现窗口的自动居中。

  要实现窗口的自动居中,我们可以用函数Move()来实现。但是,由于我们开发出来的应用程序往往会在不同的设置环境中运行,虽然一般情况下是由我们为用户配置好的,但我们总不能保证用户显示器的设置模式不会改变。所幸的是,PB为我们提供了环境对象Environment,该对象其实是一个系统结构,其中保存了PB应用程序的运行平台信息,例如,代码集,CPU类型等。其中当然会有我们需要的屏幕宽和高。为了得到该结构我们可以用函数GetEnvironment()。该函数的作用是得到关于操作系统,处理器和屏幕的系统信息。具体用法如下:

  Environment my_system
  Integer li_ScreenWidth, li_ScreenHeight
  GetEnvironment(my_system)// 得到屏幕的总宽度和长度
  li_ScreenWidth = PixelsToUnits(my_system.ScreenWidth, XPixelsToUnits!)
  li_ScreenHeight = PixelsToUnits(my_system.ScreenHeight, XPixelsToUnits!)
  // 函数PixelsToUnits()的作用是将屏幕的像数转换成PowerBuilder使用的单位,因为像数通常不用于方形中,具体用法请参见函数手册。
  然后就可以用Move()来实现窗口居中。

  This.Move((li_ScreenWidth - this.Width)/2, &

  (li_ScreenHeight - this.Height)/2 )

  二、数据窗口中实现字段的组合

  你有没有碰到这样的情况,我们输入了客户的详细地址资料,包括省份,城市,地址,邮编。当我们要给客户们邮寄信函时需要将他们的省份,城市,地址,邮编连成在一起打印出来。然而,这些信息是分开存储的,即存在不同的字段。这时我们就可以利用PowerBuiler提供的在数据窗口添加计算域(Compute Field)来实现字符字段的组合显示。

上一页12下一页

视频学习

我考网版权与免责声明

① 凡本网注明稿件来源为"原创"的所有文字、图片和音视频稿件,版权均属本网所有。任何媒体、网站或个人转载、链接转贴或以其他方式复制发表时必须注明"稿件来源:我考网",违者本网将依法追究责任;

② 本网部分稿件来源于网络,任何单位或个人认为我考网发布的内容可能涉嫌侵犯其合法权益,应该及时向我考网书面反馈,并提供身份证明、权属证明及详细侵权情况证明,我考网在收到上述法律文件后,将会尽快移除被控侵权内容。

最近更新

社区交流

考试问答