hur.cn - 华软网

 热门搜索

  • 授权方式: 免费源码
  • 支付金币: 0个
  • 金币充值: 点击查看
  • 下载方法: 点击查看
  • 源码大小: 785 KB
  • 评分等级: ★★★
  • 源码类别: 国内视频
  • 运行环境: WinXP/NT/Vista/Win7
  • 整理录入: 昕晨
  • 更新时间: 2009/12/3 14:36:06

源码介绍    


潇洒老乌龟整理的PB资料CHM

 

前  言
 
  回想起最初学习PowerBuilder时的情景,当时国内没有什么中文资料,更不要说和谁去交流了。但是,领导安排的工作如果不能按时完成,被鸟一次是很正常的,严重的话就失业了。只好硬着头皮,走过了不知多少弯路,查阅了非常多的资料,(当然是联机帮助了。)才能解决。虽然解决得不是很成功,虽然自己动手编写了一堆又一堆的垃圾程序,但是,确实掌握了很多知识,确实深刻认识到了PB很多精妙的东西。这些,是在任何书本中都学不到的。同时在此感谢曾经帮助过我的人,他们有重庆大学潘保昌教授、深圳市思乐数据公司李学俊老师,汕头大学沈达阳老师等。

  这些在书本中学不到的东西,总结出来也未尝没有用处。我觉得以下几点值得借鉴:
  1、多动手。自己多编写程序,多实践。这是初学者最应该提倡的。
  2、勤查阅。查阅联机资料,包括联机帮助、PB自带的例子程序。PB的联机资料做得非常好,不仅有用法,还有经验技巧、注意事项和实例等;PB的自带例子程序编码虽然不是非常规范,但是非常系统,涉及到PB中的各种实用技术,很多程序稍加改造就可以用到实际的软件开发中。
  3、好习惯。规范的变量命名、详细的注释等等,一旦形成了良好的编程习惯,才能编写规范的程序。具体资料见本书<PB编程标准和规范>一文。
  4、抓重点。函数、事件和数据窗口。PB中提供的函数非常多,目前版本有600多个函数(不包括数据窗口对象中的、Web应用中的),但是经常使用的不过100个,掌握了这100个函数就可以开发软件项目了。事件的触发时机是非常重要的,要加强理解。数据窗口是PB的核心,掌握数据窗口是学习PB必须要做到的。

  以上是我学习的一点体会,是否对你有用还要看你的学习习惯。

  这些文章都是我在各网站收集并加以整理的,部分为自己原创。为了方便大家阅读,特将这些文章整理出来,制作成电子图书,免费供大家下载,奉献给所有热爱PowerBuilder和将要学习PowerBuilder的朋友。

  制 作 人:潇洒老乌龟

  责任编辑:潇洒老乌龟

 

在PowerBuilder中调用ChooseColor函数
 
  首先创建一个Custom user object并定义如下Structure(OS_ChooseColor):
  long lstructsize
  ulong hwndowner
  ulong hinstance
  long rgbresult
  blob lpcustcolors
  long flags
  long lcustdata
  long lpfnhook
  long lptemplatename

  定义实例变量:
  Private:
  os_ChooseColor istr_ChooseColor
  long il_CustomInitColors[16]
  blob{64} ibl_CustomColors

  定义外部函数::
  function boolean ChooseColorA( REF os_ChooseColor lpcc ) library "comdlg32.dll"

  在 constructor 事件中写入如下代码::
  // initialize choosecolor information
  // convert the default custom color array to a blob variable blobedit    (ibl_customcolors,1,il_custominitcolors)

  // let the structure element point to the blob array
  istr_choosecolor.lpcustcolors = ibl_customcolors

  // set the size
  istr_choosecolor.lStructSize = 36

  // no owner
  SetNull(istr_choosecolor.hwndOwner)

  // set flag
  istr_choosecolor.flags = 1

  创建对象函数:boolean of_choosecolor(ref long al_rgbresult) ,代码如下:
  boolean lb_ok
  istr_ChooseColor.rgbresult = al_rgbresult
  lb_ok = ChooseColorA ( istr_choosecolor )
  al_rgbresult = istr_ChooseColor.rgbresult
  return lb_ok
 

获得应用程序所在目录
 
  利用API函数GetModuleFileNameA即可获得应用程序所在目录,但是该函数在PB开发环境中运行时返回的是PB60.exe所在的目录,在编译后的可执行文件运行时才返回应用程序所在目录。那么如何得知程序是在开发环境中运行还是编译后的可执行文件呢?可以根据Handle(getapplication())的返回值来判断,等于 0 时程序运行在开发环境中,非 0 则是编译后的可执行文件。
  Function uint GetModuleFileNameA(ulong hModule,ref string lpFilename,ulong nSize)
  Library "kernel32.dll"

  string ls_Buffer=Space(255)

  IF Handle(GetApplication()) <> 0 THEN ////已编译
   GetModuleFileNameA(Handle(GetApplication()),ls_Buffer,255)
  END IF 
 



上一源码:房客Bood制作的编程技巧集CHM
下一源码:尚无数据

下载地址    

  • 潇洒老乌龟整理的PB资料CHM

下载说明

  • 为防止盗链,本站资源部分有解压密码,解压密码点击查看
  • 如果您发现该资源不能下载,请通知管理员;
  • 为了保证您快速的下载,推荐使用迅雷或网际快车等专业工具下载;
  • 为确保所下资源能正常使用,请使用WinRAR v3.80或以上版本解压本站资源;
  • 本站所收集的下载资源均来源于网络,如果有侵犯您的版权,请来信告知,我们会马上处理;
  • 本站所提供的资源仅供学习和研究,请勿用于商业用途,请在下载后24小时内删除;
  • 本站不承担用户因使用这些下载资源对自己和他人造成任何形式的损失或伤害!