欢迎光临
我们一直在努力

如何使鼠标单击ITEM单元格时黑色选中色变为其他颜色?(原创)-数据库专栏,SQL Server

建站超值云服务器,限时71元/月

如何使鼠标单击item单元格时黑色选中色变为其他颜色?

问题描述:

如何使鼠标单击item单元格(tab order为0)时黑色选中色变为其他颜色?

解决方案:

1、首先将dw属性中的column moving 和mouse selection两项取消选中;

2、在dw的clicked事件中写代码:

//此处声明所用到的相关变量; 

long  ll_curcol,ll_pos,ll_cols 

string  ls_modstring,ls_colname,ls_color_1,ls_color_2,ls_curcol

 

if row = 0 then return

 

//此处给两个颜色变量赋值; 

ls_color_1 = string(rgb(255,255,255)) 

ls_color_2 = string(15780518) //此处设置选中单元格为sky天蓝色

 

//此处获取当前列号和总列数; 

//ll_curcol=dw_1.getcolumn()

ls_curcol = left(dw_1.getobjectatpointer(),pos(dw_1.getobjectatpointer(),”~t”) – 1)

ll_cols = long(dw_1.object.datawindow.column.count) 

 

//此处将所有列的background的mode属性设为不透明;(注:下面两句其实可以放到form的open事件或dw的constructor里面执行,可以提高效率;) 

dw_1.setredraw(false)

for  ll_pos = 1  to  ll_cols 

    ls_colname = dw_1.describe(“#”+string(ll_pos)+”.name”) 

    dw_1.modify(ls_colname+”.background.mode=0″) 

next 

 

//此处将所操作列的background.color属性设为带if判断的表达式,而除此之外的各列的背景表达式均设为恒值; 

for  ll_pos = 1  to  ll_cols 

    ls_colname = dw_1.describe(“#”+string(ll_pos)+”.name”) 

    //if  ll_pos<>  ll_curcol  then 

    if  ls_colname <> ls_curcol then 

          ls_modstring = ls_colname+”.background.color=”+ls_color_1+”” 

    else 

          ls_modstring = ls_colname+”.background.color=”+ls_color_1+”  ~t  if  (getrow()=currentrow(),”+ls_color_2+”,”+ls_color_1+”)” 

    end  if 

    //此处执行背景颜色修改; 

    dw_1.modify(ls_modstring)    

next 

 

//刷新显示新的背景颜色;

dw_1.setredraw(true)

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 如何使鼠标单击ITEM单元格时黑色选中色变为其他颜色?(原创)-数据库专栏,SQL Server
分享到: 更多 (0)

相关推荐

  • 暂无文章