社区
控件与界面
帖子详情
PB 自定义对象的constructor 事件
qq135849
2012-02-08 04:12:09
新建了一个自定义对象uo_1
// 创建实例
uo_1 u_1
u_1 = create uo_1
为什么创建实例时 不会调用 uo_1 的constructor 事件呢,
自定义对象的 constructor 又是什么时候执行的呢?
...全文
359
6
打赏
收藏
PB 自定义对象的constructor 事件
新建了一个自定义对象uo_1 // 创建实例 uo_1 u_1 u_1 = create uo_1 为什么创建实例时 不会调用 uo_1 的constructor 事件呢, 自定义对象的 constructor 又是什么时候执行的呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fjfzyufan
2012-02-13
打赏
举报
回复
自定义对象跟窗口对象一样, 用Create不会触发constructor事件. 必须用OpenUserObject函数才会触发。
wag_enu
2012-02-09
打赏
举报
回复
[Quote=引用楼主 shidebao12 的回复:]
新建了一个自定义对象uo_1
// 创建实例
uo_1 u_1
u_1 = create uo_1
为什么创建实例时 不会调用 uo_1 的constructor 事件呢,
自定义对象的 constructor 又是什么时候执行的呢?
[/Quote]
你是如何确定它没被执行的?
在constructor 里加一个 messagebox() 看看运行反映。。。
noobw
2012-02-09
打赏
举报
回复
设置断点进去看吧,如果断点都进不去说明你的调用那边就出了问题。
在创建那边设置一个断点,constructor里面设置一个断点就可以进去了。
qq135849
2012-02-09
打赏
举报
回复
itrans_his = CREATE transaction
debugbreak()
messagebox('提示','111')
//实例变量itrans_his,新建事务,记录合作医疗通讯日志用 minqingsheng 20080612
string ls_ssss,ls_pp,ls_server
int li_l1,li_l2
char lc_valid
ib_canused = false
select valid
into :lc_valid
from ia_pactunitinfo
where pact_code = '17';
if sqlca.sqlcode <> 0 then
gf_msg ("查询广陵合作医疗是否禁用失败,请重试~n"+sqlca.sqlerrtext,111)
return
end if
if lc_valid = '1' then
ls_pp = ProfileString('newhis.ini','newhis','pp','')
ls_ssss = ProfileString('newhis.ini','newhis','ss','')
ls_server = ProfileString("newhis.ini","newhis","servername"," ")
li_l1 = integer(mid(ls_pp,9,2))
li_l2 = integer(mid(ls_pp,29,2))
itrans_his = CREATE Transaction
itrans_his.DBMS = "O84 ORACLE 8.0.4"
itrans_his.LogPass = f_ini_decrypt(mid(ls_ssss,72,li_l2))
itrans_his.ServerName = ls_server
itrans_his.LogId = f_ini_decrypt(mid(ls_ssss,19,li_l1))
itrans_his.AutoCommit = false
itrans_his.DBParm = "CommitOnDisconnect='No'"
Connect Using itrans_his;
if itrans_his.sqlcode <> 0 then
gf_msg("数据库连接失败,请重试~n"+itrans_his.sqlerrtext,111)
return
end if
ib_canused = true
end if
加了messagebox, 也不执行
tingmo1999
2012-02-08
打赏
举报
回复
促发啦
noobw
2012-02-08
打赏
举报
回复
constructor 一般是在创建对象或者用户自定义对象的时候就触发了。
具体你没触发的原因没有实际代码不是很清楚。
PB
透明文本的实现 statictext
PB
中的静态文本控件可以设置各种不同的背景色,但没有办法设置为透明色,这在某些特殊界面设计要求时显得心有余而力不足。本文提供一种实现透明文本的简单方法,并不需要借助API。方法如下: 1、 建立一个工作空间(workspace),取名为:transparent_st。 2、 建立一个应用(application),取名为:transparent_st。 3、 建立一个可视用户
对象
,uo_transparent_st,类型为statictext,定义下列变量: boolean ib_painting 4、 编写uo_transparent_st的
Constructor
事件
脚本: //536870912 透明色 This.backcolor = 2^29 5、 定义uo_transparent_st的用户
自定义
事件
,ue_paint(Event ID:
pb
m_paint) IF IsValid(This) THEN if ib_painting THEN Return 0 ib_painting = True This.Visible = False Do While Yield() Loop This.Visible = True ib_painting = False END IF Return 0
PB
12.5带图标菜单
自定义
对象
1.新建
自定义
非可视
对象
, uo_supermenu。 新建main类型窗口w_popmenu. 新建菜单 m_popmenu。 2.uo_supermenu完整脚本: forward global type uo_supermenu from nonvisualobject end type type rect from structure within uo_
JavaScript之Date
对象
详解(属性和方法)
Date
对象
属性
constructor
返回对创建此
对象
的 Date 函数的引用。prototype 使您有能力向
对象
添加属性和方法。Date
对象
方法getDate() 从 Date
对象
返回一个月中的某一天 (1 ~ 31)。getDay() 从 Date
对象
返回一周中的某一天 (0 ~ 6)。getFullYear() 从 Date
对象
以四位数字返回年份。getHours() 返回 Date
对象
的小时 (0 ~ 23)。getMilliseconds() 返回 Date
对象
的毫秒(0 ~ 999)。getMinutes() 返回 Date
对象
的分钟 (0 ~ 59)。getMonth() 从 Date
对象
返回月份 (0 ~ 11)。getSeconds() 返回 Date
对象
的秒数 (0 ~ 59)。getTime() 返回 1970 年 1 月 1 日至今的毫秒数。getTimezoneOffset() 返回本地时间与格林威治标准时间 (GMT) 的分钟差。getUTCDate() 根据世界时从 Date
对象
返回月中的一天 (1 ~ 31)。getUTCDay() 根据世界时从 Date
对象
返回周中的一天 (0 ~ 6)。getUTCFullYear() 根据世界时从 Date
对象
返回四位数的年份。getUTCHours() 根据世界时返回 Date
对象
的小时 (0 ~ 23)。getUTCMilliseconds() 根据世界时返回 Date
对象
的毫秒(0 ~ 999)。getUTCMinutes() 根据世界时返回 Date
对象
的分钟 (0 ~ 59)。getUTCMonth() 根据世界时从 Date
对象
返回月份 (0 ~ 11)。getUTCSeconds() 根据世界时返回 Date
对象
的秒钟 (0 ~ 59)。getYear() 已废弃。 请使用 getFullYear() 方法代替。parse() 返回1970年1月1日午夜到指定日期(字符串)的毫秒数。setDate() 设置 Date
对象
中月的某一天 (1 ~ 31)。setFullYear() 设置 Date
对象
中的年份(四位数字)。setHours() 设置 Date
对象
中的小时 (0 ~ 23)。setMilliseconds() 设置 Date
对象
中的毫秒 (0 ~ 999)。setMinutes() 设置 Date
对象
中的分钟 (0 ~ 59)。setMonth() 设置 Date
对象
中月份 (0 ~ 11)。setSeconds() 设置 Date
对象
中的秒钟 (0 ~ 59)。setTime() setTime() 方法以毫秒设置 Date
对象
。setUTCDate() 根据世界时设置 Date
对象
中月份的一天 (1 ~ 31)。setUTCFullYear() 根据世界时设置 Date
对象
中的年份(四位数字)。setUTCHours() 根据世界时设置 Date
对象
中的小时 (0 ~ 23)。setUTCMilliseconds() 根据世界时设置 Date
对象
中的毫秒 (0 ~ 999)。setUTCMinutes() 根据世界时设置 Date
对象
中的分钟 (0 ~ 59)。setUTCMonth() 根据世界时设置 Date
对象
中的月份 (0 ~ 11)。setUTCSeconds() setUTCSeconds() 方法用于根据世界时 (UTC) 设置指定时间的秒字段。setYear() 已废弃。请使用 setFullYear() 方法代替。toDateString() 把 Date
对象
的日期部分转换为字符串。toGMTString() 已废弃。请使用 toUTCString() 方法代替。toISOString() 使用 ISO 标准返回字符串的日期格式。toJSON() 以 JSON 数据格式返回日期字符串。toLocaleDateString() 根据本地时间格式,把 Date
对象
的日期部分转换为字符串。toLocaleTimeString() 根据本地时间格式,把 Date
对象
的时间部分转换为字符串。toLocaleString() 据本地时间格式,把 Date
对象
转换为字符串。toString() 把 Date
对象
转换为字符串。toTimeString() 把 Date
对象
的时间部分转换为字符串。toUTCString() 根据世界时,把 Date
对象
转换为字符串。UTC() 根据世界时返回 1970 年 1 月 1 日 到指定日期的毫秒数。valueOf() 返回 Date
对象
的原始值。
PB
自定义
按钮(不使用api重绘)
GIF: 1、引用API是为了画4个角的弧度; FUNCTION ulong CreateRoundRectRgn(ulong X1,ulong Y1,ulong X2,ulong Y2,ulong X3,ulong Y3) LIBRARY "gdi32.dll" FUNCTION ulong SetWindowRgn(ulong hWnd,ulong hRgn,boolean bRedraw) LIBRARY "user32.dll" 2、
PB
9代码 forward global...
Pb
事件
发生顺序
窗体中控件
constructor
->窗体open->窗体close ->控件 destructor
自定义
用户
对象
父
对象
constructor
-子
constructor
-父destructor-子destructorOpen
事件
结束后显示窗体,窗体打开时调整控件时一定要在open
事件
后调整可以使用 post
事件
或函数来实现
控件与界面
604
社区成员
12,293
社区内容
发帖
与我相关
我的任务
控件与界面
PowerBuilder 控件与界面
复制链接
扫一扫
分享
社区描述
PowerBuilder 控件与界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章