问个TStringGrid的问题,向各位大牛请教?

hwei2004 2007-06-21 10:52:32
问下,如果StringGrid中的某个单元格的内容变化了,我怎么才能捕获,或者说,某个单元格内容变化了,有没有向ComboBox那样的change事件啊?
不知道我的问题说明白没有,向各位大侠请教。
...全文
134 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
jacknes009 2007-06-22
  • 打赏
  • 举报
回复
正如楼上所说的,在下面函数写入你的判断条件就可以
void __fastcall TForm1::StringGrid1SetEditText(TObject *Sender, int ACol,
int ARow, const AnsiString Value)
{
//ACol,ARow就是列值和行值,根据这两个值就能确定是哪个单元格发生了变化,变化后
//的值就是Value,再去相应的修改其他单元格的值就可以了。
}
i_love_pc 2007-06-22
  • 打赏
  • 举报
回复
void __fastcall TForm1::StringGrid1SetEditText(TObject *Sender, int ACol,
int ARow, const AnsiString Value)
{
//ACol,ARow就是列值和行值,根据这两个值就能确定是哪个单元格发生了变化,变化后
//的值就是Value,再去相应的修改其他单元格的值就可以了。
}
hwei2004 2007-06-22
  • 打赏
  • 举报
回复
谢谢楼上,我是在一个单元格cell[0][0]输入的数字,根据公式,另外一个单元格cell[0][1]的数字发生了变化,而该单元格变化,有要让cell[0][8]的单元格也根据公式变化。
i_love_pc 2007-06-22
  • 打赏
  • 举报
回复
如果是由代码控制内容改变的,那自己应该知道什么时候获取这个事件。

如果是在界面上输入改变单元格的值,有个OnSetEditText事件可用
//StringGrid1->Options<<goEditing;
void __fastcall TForm1::StringGrid1SetEditText(TObject *Sender, int ACol,
int ARow, const AnsiString Value)
{
ShowMessage(Value);
}
//---------------------------------------------------------------------------
hwei2004 2007-06-22
  • 打赏
  • 举报
回复
谢谢两位楼上的指点

13,824

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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