考试网 >> IT认证 >> 水平 >> 系统工程师 >> PowerBuilder制作IE风格的图标按钮

PowerBuilder制作IE风格的图标按钮

发布时间:2006-06-28 02:22     点击:
分页:[1] 2 3 4 5  下一页

  本文介绍在PowerBuilder中实现IE风格的图标按钮的技巧。在C++ Builder开发工具中,有一种图标按钮(SpeedButton),这种按钮可以在鼠标移入按钮后,在图片的周围会出现凸出的边框,鼠标移出按钮后边框消失。而在PowerBuilder中没有提供这种功能的按钮,为了使开发的应用程序界面更丰富,我们使用自定义图形控件(Picture)扩展并实现了此功能,这种方法设计出的程序简洁实用。

  一、实现功能

  按钮可以显示四种状态图形:

  1、Normal状态;

  2、Disabled状态;

  3、MouseOver状态(鼠标进入按钮区);

  4、ClickDown状态(鼠标按下)。

  二、关键方法

  1、当鼠标进入按钮区域时,控件图片改换成MouseOver状态的图片,并设置状态信号;

  2、鼠标滑入按钮区域后用Windows API函数SetCapture来捕获鼠标输入消息,跟踪鼠标位置;

  3、当监测到鼠标滑出按钮区域时,用ReleaseCapture函数释放鼠标捕获,恢复按钮图片到Normal状态并设置状态信号;

  4、改变控件的图片(PictureName)前,先用ReleaseCapture释放鼠标捕获,然后改变PictureName属性值,接着重新调用SetCapture函数,因为改变图片后PowerBuilder重新建立了控件窗口,窗口的句柄(hWnd)也随之改变了。

  三、设计过程

  1、新建“User Object” -〉选择Visual的Standard类 -〉选择“Picture”;

  2、定义全局的或局部的外部函数:

// Declare External Functions

function ulong SetCapture

(ulong hwnd) library "user32.dll"

function boolean ReleaseCapture

(ulong hwnd) library "user32.dll"

function boolean DrawEdge(ulong hdc,

ref rect qrc, uint edge, uint grfFlags)

分页:[1] 2 3 4 5  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有