最新版的ehlib(5.013)在delphi2010下的过滤bug(20)

  • 主题发起人 主题发起人 青云
  • 开始时间 开始时间

青云

Unregistered / Unconfirmed
GUEST, unregistred user!
在delphi2010下,其TMemTableEh的过滤中文有bug;中文没法过滤;ehlib5.013下提供的demo程序,全部不支持中文过滤; 不知道有没有人解决过这个问题。
 
问题演示:http://www.daizhicun.com/dmx/pic/ehlibbug.jpg
 
这个问题,我问了作者,希望能得到他的回复。support <support@ehlib.com> hello,i am using the ehlib with last version ;we know that Delphi2010 has made a lot of update for UniCode;i find that the filter function of TMemTableEh can not be better supported .for example:http://www.daizhicun.com/dmx/pic/ehlibbug.jpg I read ehlib codes five years ago.I hope you give me some advices to fixed it. thanks.
 
TMemTableEh 过滤中文的bug,作者给我回复了,意思是:如果字段类型是nvarchar ,也就是unicode类型就没问题; 我又跟他说,在ehlib早期版本就没有这个问题,不过那时候还没有dlephi2010;因为delphi2010做了大量的unicode处理,所以作者这块可能还有问题;对于这个问题, http://www.daizhicun.com/dmx/pic/showRecNo.jpg 我的修正方法是:修改SetColumnAttributes过程;procedure TCustomDBGridEh.SetColumnAttributes;var I: Integer; NewWidth: Integer;begin if RowPanel then begin ColWidths[FIndicatorOffset] := FGridMasterCellWidth; for I := 1 to FColumns.Count - 1 do ColWidths[I + FIndicatorOffset] := iif(dgColLines in Options, -1, 0); end else for I := 0 to FColumns.Count - 1 do with FColumns do begin TabStops[I + FIndicatorOffset] := IsTabStop; NewWidth := iif(Visible, Width, iif(dgColLines in Options, -1, 0)); if NewWidth <> ColWidths[I + FIndicatorOffset] then ColWidths[I + FIndicatorOffset] := NewWidth; end; //=======add by daizhcun at 2010.3.14 begin ========== // delete { if IndicatorColVisible then ColWidths[0] := CalcIndicatorColWidth;} //add if IndicatorColVisible and Assigned(FColumns.FGrid.DataSource) and Assigned(FColumns.FGrid.DataSource.Dataset) and (FColumns.FGrid.DataSource.Dataset.Active) and (dghShowRecNo in OptionsEh) then ColWidths[0] := IndicatorWidth + 4 + Canvas.TextWidth (IntToStr(FColumns.FGrid.DataSource.Dataset.RecordCount)) else ColWidths[0] := IndicatorWidth; //=======add by daizhcun at 2010.3.14 end ==========end;
 
青云兄,难为你了.DELPHI还能成为主流吗?
 
不是主流,只不过用delphi写写工具而已;对于delphi,我也不在深入研究下去了,只是对于过去的东西做些完善,公司项目上,越来越偏向于b/s方向。
 
得到作者的回复了,他承认序号宽度控制出了问题,不过他回复说,已经在新版本里修复了:在2010-03-15 22:01:46,"Dmitry Bolshakov" <dmitryb@farpost.com> 写道:>Hello, daizhicun.>>I fixed error with RecNo and uploaded EhLib 5.1 Build 5.1.67 source included version.
 
后退
顶部