UniDBGrid增加按钮列遇到的问题


为一个UniDBGrid增加一个按钮列,如下图:

 

 点击操作列里面的按钮,可以增加一行,删除一行,编辑一行,效果还是不错的。具体方法可以参考:uniGUI for Delphi UniDBGrid增加按钮列

实现方法不难,但是在实际使用过程中,用户发现,有时候点这几个按钮不起作用。我也是费了半天劲,终于测试出,目前的uniGUI 1549版本,确实存在这样的问题,即,当用户增加一行,并且不Post的情况情况下,点击列按钮,不起作用。我跟踪代码,原来没有执行OnColumnActionClick。

试着做了下如下的代码,就是当用户点这个单元格的时候,先做一个Post,效果还可以,下面是CellClick事件的代码:

procedure TForm1.UniDBGrid1CellClick(Column: TUniDBGridColumn);
begin
  inherited;
  if Column.FieldName='button' then
   if DetailDataSet.State in [dsInsert] then
      DetailDataSet.Post;
end;

这里有个潜在的问题,当每个字段有检查的时候,如必须填值,则Post会产生一个异常,自己看着办吧。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM