在PowerBuilder中调用ChooseColor函数

减小字体 增大字体 作者:佚名  来源:本站整理  发布时间:2009-03-16 22:35:26


首先创建一个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 


Tags:

作者:佚名
分享到: 微信 更多