zoukankan      html  css  js  c++  java
  • 怎样让DBGrid在按住Shift点鼠标的同时能将连续范围的多行选中?

    参见例子:…privateSel : Boolean ;//判断是否处于选择状态
    BookMark : TBookMark ;//记录先前的位置…procedure TForm1.DBGrid1MouseUp(Sender: TObject; Button: TMouseButton;
    Shift: TShiftState; X, Y: Integer);
    var SelNo:integer ;//记录当前位置beginif ( Button = mbLeft ) then
    if sel = false then//非选择状态,记录当前位置beginBookMark := Table1.GetBookmark ;
    Sel := true ;exit ;endelse //选择状态
    if Shift = [ssShift] thenbegin//遍历所有从先前位置开始到当前位置之间的记录并标记
    SelNo := DBGrid1.DataSource.DataSet.RecNo ;
    DBGrid1.DataSource.DataSet.DisableControls ;
    DBGrid1.DataSource.DataSet.GotoBookmark(BookMark);
    DBGrid1.SelectedRows.CurrentRowSelected := true ;
    if SelNo<DBGrid1.DataSource.DataSet.RecNo then
    while SelNo<DBGrid1.DataSource.DataSet.RecNo dobeginDBGrid1.SelectedRows.CurrentRowSelected := true ;
    DBGrid1.DataSource.DataSet.Prior ;endelsewhile SelNo DBGrid1.DataSource.DataSet.RecNo dobeginDBGrid1.SelectedRows.CurrentRowSelected := true ;
    Sel := false ;end ;end;虽然效果不十分理想,但足以完成要求。

  • 相关阅读:
    文件操作-图片的拷贝
    UIBarbuttonItem
    pod 'Masonry' 自动布局
    文件操作——图片保存到本地
    IOS简单的定位
    UITapGestureRecognizer+动画
    KVO
    UIScrollView
    UITextField的使用
    1228.1——计算器(未使用MVC设计模式)
  • 原文地址:https://www.cnblogs.com/jijm123/p/10534665.html
Copyright © 2011-2022 走看看