关闭

PB实现数据窗口中checkbox的点选

标签: 事件控制pb代码
1613人阅读 评论(0) 收藏 举报
分类:

数据窗口中checkbox有时候点了却不打勾,是因为数据窗口的taborder值的问题,解决办法就是修改为0,代码控制完成。
数据窗口clicked事件

//在窗口的实例变量定义:long il_LastSelectedRow = 1

long ll_Start
long ll_End
long ll_index
long ll_selectrow

if Row < 1 then return

//if KeyDown(KeyControl!) then
//  if This.IsSelected(Row) then
////        This.SelectRow(Row,False)
//      This.object.ls_select[Row] = '0'
//  else
////        This.SelectRow(Row,True)
//      This.object.ls_select[Row] = '1'
//  end if
if KeyDown(KeyShift!) then
    if Row < il_LastSelectedRow then
        ll_Start = Row
        ll_End = il_LastSelectedRow
    else
        ll_Start = il_LastSelectedRow
        ll_End = Row
    end if

//  This.SelectRow(0,False)
    //取消所有选择
//  For ll_selectrow = 1 to this.rowcount()
//      This.object.ls_select[ll_selectrow] = '0'
//  Next
    //重新选择
    For ll_index = ll_Start to ll_End
        This.object.ls_select[ll_index] = '1'
    next
else
    if This.object.ls_select[Row] = '1' then
        This.object.ls_select[Row] = '0'
    else
        This.object.ls_select[Row] = '1'
    end if
//  if Not This.IsSelected(Row) then
//      This.SelectRow(0,False)
//      This.object.ls_select[Row] = '0'
//      This.SelectRow(Row,True)
//      This.object.ls_select[Row] = '1'
//  end if
end if

il_LastSelectedRow = Row

//带参数的自定义事件执行
cb_4.Trigger Event ue_selectcount('row_count')
//cb_4.TriggerEvent('ue_selectcount','row_count')

按钮cb_4自定义事件

//*********************************************************
// 调用:cb_4.Trigger Event ue_selectcount('row_count')
// 返回值类型:long
// 参数:ue_flag  string
//
//*********************************************************
long ll_selectcount,ll_row
ll_selectcount = 0
For ll_row = 1 to dw_1.rowcount()
    If dw_1.object.ls_select[ll_row] = '1' then
        ll_selectcount += 1
//      string ls_b5
//      ls_b5 = dw_1.object.b_5[ll_row]
//      messagebox('',ls_b5)
    End if
Next
choose case ue_flag
    case 'row_count'
        sle_1.text = '符合条件的项目为:' +string(dw_1.rowcount()) + '条,选择打印:' + string(ll_selectcount) + '条'
//  case 'row_print'
//      sle_1.text = '系统打印进度:' + string(ll_selectount) + '/' + string(dw_1.rowcount()) + ',正在打印项目:' + ls_b5
end choose

return ll_selectcount
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:137982次
    • 积分:1980
    • 等级:
    • 排名:千里之外
    • 原创:18篇
    • 转载:262篇
    • 译文:0篇
    • 评论:12条
    文章分类
    最新评论