关于回调函数中的指针问题【已解决】
本帖最后由 gto250 于 2015-9-27 00:12 编辑最近在学习使用炫彩界面库,在调用dll中碰到了无法解决的问题,特此发帖询问。
int CALLBACK OnWndRButtonUp(UINT nFlags,POINT *pPt,BOOL *pbHandled);
这是对WM_RBUTTONUP消息的回调函数,pPt是鼠标点坐标。
在au3中,我的回调函数是这么写的
$pOnWndRButtonUp=DllCallbackGetPtr(DllCallbackRegister("OnWndRButtonUp","int","UINT;ptr;BOOL"))
XWnd_RegEventC1($m_hWindow,$WM_RBUTTONUP,$pOnWndRButtonUp);这句可以不看,这是炫彩界面库中注册右键弹起消息
Func OnWndRButtonUp($nFlags,$pPOINT,$pbHandled)
;在这里,我该怎么获取$pPOINT中x点和y点的坐标呢
EndFunc 看楼主已更改为已解决,能否共享一下,以前看过炫彩,最后无果.AHK已经用上了 回复 2# 繁星
Func OnWndRButtonUp($nFlags,$pPOINT,$pbHandled)
$tagPOINT = "struct; long X;long Y; endstruct"
$ppt=DllStructCreate($tagPOINT,$pPOINT)
$x=DllStructGetData($ppt,"X")
$y=DllStructGetData($ppt,"Y")
EndFunc
炫彩调用还是比较简单的,很喜欢 本帖最后由 繁星 于 2015-9-29 16:53 编辑
楼主,下午我按照官方RichEdit示例写,DllCall($dll, 'Ptr', 'XRichEdit_SetText', 'Ptr', $XRichEdit_Create, 'WStr', '123456\n一二三四五六')C中的换行符\n在这里应该怎么写,我上边写的不对,当字符串用啦,
{:face (356):}
犯了我曾经犯的错误,'123456'&@CRLF&'一二三四五六'
就可以啦。 回复 4# 繁星
炫彩的edit的右键菜单都要自己写,郁闷了 本帖最后由 繁星 于 2015-9-30 16:33 编辑
回复 6# gto250 DllCall($dll, 'Ptr', 'XRichEdit_SetText', 'Ptr', $XRichEdit_Create, 'WStr', '123456' & @CRLF & '一二三四五六')这样貌似不行,直接忽略掉了,输出结果:123456一二三四五六
对了,那个U设计器你有木有用, 回复 3# gto250
学习了,谢谢 回复 7# 繁星
你肯定没有启用编辑框的多行,启用了,就正常了
设计器一点头绪都没有,我就没用过,现在用炫彩就跟08年用au3一样,界面都是写一下,运行看一下,再写一下。 元老,你的大作完成了么,给我们参详参详炫彩的界面 回复 10# 繁星
没,我一直在做易语言的模块,那个写起来方便多了,直接可以用对象和类 回复 11# gto250
本打算放弃炫彩了,打算转htmlayout了,自己有点前端基础,做界面应该不难得,下午快下班得时候发现, 炫彩论坛今天开了,我上去找了找,发现1.8.1得UI设计器可以用啊, 无需付费可以导入资源得,乐了,应该会方便许多拉,{:face (411):}
页:
[1]