首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TDBGrid onSelect

TDBGrid onSelect
EN

Stack Overflow用户
提问于 2008-12-17 13:45:07
回答 4查看 1.3K关注 0票数 1

我想自定义TDBGrid:

1)添加onSelect/onUnselect事件-例如,good用于显示选定项目的计数。

2)在鼠标左键单击时删除选择项。我继承了TDBGrid并重写了MouseDown,但无法移动列或调整列的大小:(

那么,该怎么做呢?

D2009

EN

回答 4

Stack Overflow用户

发布于 2009-01-29 14:02:26

您需要检查选定属性中的更改。

票数 1
EN

Stack Overflow用户

发布于 2009-01-29 15:05:41

这就完成了我的工作:

代码语言:javascript
复制
implementation

{$R *.dfm}

type
  THackDBGrid = class(TDBGrid);
//for info on why we must do this, see:
//http://delphi.about.com/od/oopindelphi/l/aa082603a.htm

var
  LastValidRow: integer;

procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
begin
  //assign this to the TDBGrid.DataSource.DataSet.OnDataChange Event
  if 0 <> HiWord(GetKeyState(VK_LBUTTON)) then begin
    THackDBGrid(DBGrid1).Row := LastValidRow;
  end
  else begin
    LastValidRow := THackDBGrid(DBGrid1).Row;
    inherited;
  end;
end;
票数 1
EN

Stack Overflow用户

发布于 2008-12-17 14:57:30

我认为您可能需要确保允许继承的Mousedown运行,以便执行标准的移动和调整大小行为。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/374561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档