如图:
要求实现:图中某一列的数据,选中这一列当中的几行数据(鼠标左键拖动,选中时是黑色的)时,会弹出提示出来,显示出的数据是选中的数据的和。
谁有例子或思路给我参考下。
------解决方案--------------------
- C/C++ code
定义实例变量: integer li_st,li_end //起始行,结束行boolean ib_l //记录左键是否按下 在DW上建立3个事件 :1 pbm_dwnlbuttonclk 在DW上点下左键 li_st = row 记录起始行 ib_l = true 2 pbm_dwnmousemove 在DW上移动鼠标 if ib_l = true then //如果左键点下,记录经过的行 This.SelectRow(row, true)//变色 end if3 pbm_dwnlbuttonup 放开左键 li_end = row 记录结束行 ib_l = false messagebox("","选中了" + string(li_st) + "到" + string(li_end))得到了行范围 for循环取值求和或者用计算列求和 自己完善吧
------解决方案--------------------
PB数据窗口默认的功能就支持单元格选择
取数据你可以用以下得到选中行的数据
表达式:
dwcontrol.Object.Data {.Primary } {.datasource } .Selected
示例:
由于Primary缓冲区和当前值选项是缺省的,所以下面语句式等价的,都是得到选中行的数据
dw_1.Object.Data.Selected
dw_1.Object.Data.Primary.Selected
dw_1.Object.Data.Current.Selected
dw_1.Object.Data.Primary.Current.Selected
=====================================================================
下面语句得到被选中行的初始值
dw_1.Object.Data.Original.Selected
dw_1.Object.Data.Primary.Original.Selected
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/lzp_lrp/archive/2009/08/27/4488475.aspx
------解决方案--------------------
通过 describe("datawindow.selected")可以获得哪些列的哪些行被选中
通过 describe("datawindow.selected.data") 可以获得所有被选中的数据
这两个结合可以做出对选中数据的一系列计算,求和、平均值、最小值、最大值、方差、取中位数、取高频值、取第N大的值、取第N小的值、取方差估计值、取标准偏差、取标准偏差估计值等