用Ctrl和Shift键实现鼠标多选数据行

功能实现:配合ctrl和shift键,实现用鼠标多选数据窗口的行,类似window的多选文件或文件夹

 // 实例变量

/Long il_row_first = 0   ///--- Instance Variables

 // dw的clicked()事件

Long  ll_pos

If row = 0 Then Return

If keydown(KeyControl!) Then     // Ctrl + Clicked
 il_row_first = row
 If IsSelected(row) Then
  This.SelectRow(row, False)
 Else
  This.SelectRow(row, TRUE)
 End If
ElseIf keydown(KeyShift!) Then   // Shift + Clicked
 This.SelectRow(0, False)
 If il_row_first <= row Then
  For ll_pos = il_row_first To row
   This.SelectRow(ll_pos, TRUE)
  Next
 Else
  For ll_pos = row To il_row_first
   This.SelectRow(ll_pos, TRUE)
  Next
 End If
Else                             // Only Clicked
 il_row_first = row 
 This.SelectRow(0, False)
 This.SelectRow(row, TRUE)
End If

猜你喜欢

转载自blog.csdn.net/zhou279818998/article/details/80274602
今日推荐