PB调用日历控件comctl32.dll,选择日期以后,触发什么事件 如何获取控件的值

PB调用日历控件comctl32.dll,选择日期以后,触发什么事件 如何获取控件的值,第1张

声明外部函数,//初始化日控件

function boolean InitCommonControlsEx(ref initcommoncontrols lpinitcommoncontrols) library "comctl32dll"

//清除指定的窗口及它的所有子窗口

function boolean DestroyWindow(ulong hwnd) library "user32"

//判断一个窗口句柄是否有效

function boolean IsWindow(ulong hwnd) library "user32"

//发送指定的信息(这里指时间结构)到指定的窗口

function long SendMessageSystemTime(long hwnd,long uMsg,long wParam,ref systemTime lpst) library "user32" alias for "SendMessageA"

还需要定义两个结构和两个函数(一个设置日期,一个获取日期)

of_getdate()函数

//声明结构 对象

systemtime stc_systemtime;

//声明日期类型 引用

date dat_calendar;

if IsWindow(i_lng_handle) then //如果窗口句柄可用

//将用户选择的时间信息填充到时间结构中去,0表示成功,其它表示失败

if SendMessageSystemTime(i_lng_handle,4097,0,stc_systemtime)=0 then

//得到日期

dat_calendar=date(stc_systemtimewyear,stc_systemtimewmonth,stc_systemtimewday);

else

setNull(dat_calendar);

end if

else

setNull(dat_calendar);

end if

return dat_calendar;

//

of_setdate(long an_handle) 函数

//将可视日历控件的窗口句柄传递给不可视的用户对象,二者关联在一起,获得日期

if IsWindow(an_handle) then

if IsWindow(i_lng_handle) then DestroyWindow(i_lng_handle);//销毁以前的对象

//设置句柄

i_lng_handle=an_handle;

end if

return

//得到日历的时间(按钮中代码)

date dat_calendar;

string str_calendar;

dat_calendar=uo_1i_nvo_calendaruf_getdate();

if isNull(dat_calendar) then

str_calendar='未得到正确的日期';

else

str_calendar=string(dat_calendar,'yyyy-mm-dd');

end if

messageBox('日历',str_calendar);

string msg

date nd

int n,t

//----取得并处理本日在本周的序数,周一为0,周日为6----

t=daynumber(today()) -2

if t=-1 then t=6

//--------------------------------------

for n=t to 0 step -1//循环取得本周今日之前的日期(含今日)

nd=relativedate(today(),-n)

msg+=string(nd,'yyyy年mm月dd日')+'~n~n'

next

for n=1 to 6 -t//循环取得本周今日之后的日期(不含今日)

nd=relativedate(today(),n)

msg+=string(nd,'yyyy年mm月dd日')+'~n~n'

next

messagebox('',msg)

这个问题没有 遇到过 不过 你在修改的时候 后面加一个字段 就是获取当前时间 ,用一个IF 来判断 如果是修改 哪么 时间 强制update 你的时间列 这样 你就可以得到你文件的最后修改时间

以上就是关于PB调用日历控件comctl32.dll,选择日期以后,触发什么事件 如何获取控件的值全部的内容,包括:PB调用日历控件comctl32.dll,选择日期以后,触发什么事件 如何获取控件的值、PB中如何取当前日期所在周的每天日期、PB 如何获得指定文件的最后修改日期等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9542331.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-29
下一篇 2023-04-29

发表评论

登录后才能评论

评论列表(0条)

保存