你是高手你过来~!!!!!!!!!!!!!!!!

xiaomi603 2002-09-03 07:59:36
怎样在DW(FREEFORM型)控件中实现焦点在哪个编辑框,
那个编辑框就可以变颜色,!!!!!!!!!
急用,答出来有大分加呀!!!!!!!!!!!!!!!!!!!!!
...全文
32 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
jzhaohua 2002-09-04
  • 打赏
  • 举报
回复
把 davidtc(我說兩句) 的改改
用 个 实例变量保存上一次的列名
一共只 modify 两次
避免了每次的循环, 节省开销
电力信息系统 2002-09-04
  • 打赏
  • 举报
回复
integer i,columncount

columncount=dw_1.getcolumn()

dw_1.modify("#"+string(columncount)+".background.color='"+string(rgb(0,255,0))+"'")

davidtc 2002-09-04
  • 打赏
  • 举报
回复
instance value:
long il_pre_column = 0

itemfocuschanged event:
long ll_columncount
ll_columncount = <a long value> //the column you appoint

dw.Modify("#" + string(ll_columncount) + ".Background.Color='<a long>'")
if ll_columncount <> 0 then
dw.Modify(dwo.name + ".Background.Color='<anthor long>'")
end if

il_pre_column = ll_columncount
byfq 2002-09-04
  • 打赏
  • 举报
回复

更正:
在ItemChanged事件中动态定义字段BackGroundColor属性。
假设字段名为col_1、col_2、col_3...
1.在DAtaWindow中键一个字段tmp,用于记录选中字段名;
2.在第一个字段的BackGroundColor属性中定义:
if(currentrow() = getrow() and tmp = 'col_1' ,rgb(239,215,143),rgb(255,255,255))

3.依此类推,第二个字段:if(currentrow() = getrow() and tmp = 'col_2' ,rgb(239,215,143),rgb(255,255,255))直到最后一个字段。
4.在DAtaWindow的ItemChanged事件:Object.tmp = dwo.name

xiaomi603 2002-09-03
  • 打赏
  • 举报
回复
说详细一点,摆脱了
freshman113 2002-09-03
  • 打赏
  • 举报
回复
davidtc的方法基本可以,但太“重”了点,最好用实例变量记录上次光标所在位置,不需要通过循环来修改
xiaomi603 2002-09-03
  • 打赏
  • 举报
回复
关注各位,尽情发表意见吧?我会感激你们,至少明天吃大蒜的时候留一滴泪.
xiaobzg 2002-09-03
  • 打赏
  • 举报
回复
数据窗口的Itemfocuschanged!事件的代码如下:
string ls_name,ls_syntax
string ls_modify

ls_name = dw_1.getcolumnname()
ls_syntax = ls_name + '.background.color = ~'121001~''
ls_modify = dw_1.Modify(ls_syntax)
奇遇 2002-09-03
  • 打赏
  • 举报
回复
实在想不出更好的办法了,基本同意lesni(乐S你)的
lesni 2002-09-03
  • 打赏
  • 举报
回复
在ItemChanged事件中动态定义字段BackGroundColor属性。
假设字段名为col_1、col_2、col_3...
1.在DAtaWindow中键一个字段tmp,用于记录选中字段名;
2.在第一个字段的BackGroundColor属性中定义:Case(tmp when 'col_1' then rgb(0,0,255) else rgb(255,255,255))
3.依此类推,第二个字段:Case(tmp when 'col_2' then rgb(0,0,255) else rgb(255,255,255))直到最后一个字段。
4.在DAtaWindow的ItemChanged事件:Object.tmp = dwo.name
davidtc 2002-09-03
  • 打赏
  • 举报
回复
第一列阿,每一列都有一个特定的数字标示
lsllyy 2002-09-03
  • 打赏
  • 举报
回复
请问一个问题了,#1代表什么呀
davidtc 2002-09-03
  • 打赏
  • 举报
回复
itemfocuschanged event:
long i,ll_columncount
ll_columncount = dw.columncount()

for i = 1 to ll_columncount
dw.Modify("#" + string(i) + ".Background.Color='<a long>'")
next

dw.Modify(dwo.name + ".Background.Color='<anthor long>'")

1,075

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧