如何在StringGrid中加上OnChange事件?

miky 2004-03-26 12:51:09
Edit等控件都有OnChange事件,我想在StringGrid中也加上,好判断用户是否修改了内容,有什么简便的方法吗?
...全文
71 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ailibuli 2004-03-28
  • 打赏
  • 举报
回复
楼主如果对StringGrid加OnChange事件,是在编集状态击发,
可用OnGetEditText試試。
如果真加OnChange事件、并不好控制、因为各个Cell間的移動、
可否修正等属性都是変数。
miky 2004-03-28
  • 打赏
  • 举报
回复
不明白楼上的意思。你说的和老者说的是一样的吧?那什么时候该调用Changed? 实现的细节并不重要,关键是方法。
WGYKING 2004-03-27
  • 打赏
  • 举报
回复
这个问题有点意思
感觉就想骑驴找驴的感觉

~~~~~~~~~~~~~~~~~~~~~~
这是TStringList的实现
~~~~~~~~~~~~~~~~~~~~~~
property OnChange: TNotifyEvent read FOnChange write FOnChange;

procedure TStringList.Changed;
begin
if (FUpdateCount = 0) and Assigned(FOnChange) then
FOnChange(Self);
end;

procedure TStringList.Clear;
begin
if FCount <> 0 then
begin
Changing;
Finalize(FList^[0], FCount);
FCount := 0;
SetCapacity(0);
Changed;
end;
end;

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
是不是这种味道?
miky 2004-03-27
  • 打赏
  • 举报
回复
能不能详细一点啊,最好在代码改变内容时也触发OnChange事件。
aiirii 2004-03-26
  • 打赏
  • 举报
回复
OnKeyUp, OnKeyPress之类也可以达到 OnChange的目的
ttzzj 2004-03-26
  • 打赏
  • 举报
回复
WM_CHAR
VeryOldMan 2004-03-26
  • 打赏
  • 举报
回复
最佳方案:

自己从StringGrid继承过来一个新StringGrid控件,在其中声明一个OnChange事件。

5,392

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧