客户要求要在DBGRIDEH上显示:2X10 3 期中3还要是上标。
同样在Fastreport也要同样输出。
帮忙!!!!
同样在Fastreport也要同样输出。
帮忙!!!!
解决方案 »
- 浮点数加减法结果有问题
- 如何在Listbox里实现对目标目录文件夹的定时自动刷新?
- 急急急~~~~~~~!请各位高手们帮帮我这个菜鸟!~~~
- 如何隐藏应用程序在任务栏图标,在使用最小化按钮时,出现的动态效果是缩小到任务栏的托盘区域?
- 限制计算时间和辅助空间的数组排序算法问题!!高分赐教。
- delphi 执行 jquery 代码错误
- VB 调用DELPHI编写的DLL出现了问题如何解决?
- CSDN最近怎么了?速度奇慢,恳切要求改进。
- 请问:在delphi中关键字overload ,override具体有什么意思?
- 我下了一个小东西,*.wdl,(可能是类似文本的东西)不知道用什么打开呀
- 谁有用delphi做的2000上的service的例子
- 请教三个安装相关问题
利用DBGrid的OnDrawColumnCell事件解决显示问题,
利用QRLabel的OnPrint事件解决打印问题。
//要使事件OnDrawColumnCell生效,需要将DBGrid1的
//属性DefaultDrawing置为False(缺省是True)
procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect;
DataCol: Integer; Column: TColumn; State: TGridDrawState);
{
Rect: 当前需要重画的区域,用于计算图形输出位置
DataCol:当前记录的当前字段,用于获取数据的值
Column: 当前列,可以根据此参数实现不同列显示为不同颜色
State: 当前数据的状态,区分编辑、浏览等状态
}
var
X1, Y1, X2, Y2: Integer;
begin if (Sender is TDBGrid) then Exit;
if DataCol <> 3 then begin//假定第4列当前数据可以分解为2,3
{根据参数计算出要输出 2 X 10 的位置 (X1, Y1), 以及需要的
字体(包括尺寸、颜色等);计算出指数 3 的位置 (X2, Y2)
}
{输出2 X 10之前设置DBGrid1中的
Canvas.Pen和Canvas.Brush以及Canvas.Font}
DBGrid1.Canvas.TextOut(X1, Y1, '2 X 10');
DBGrid1.Canvas.TextOut(X2, Y2, '3');
end else begin//显示其他数据
DBGrid1.DefaultDrawColumnCell(Rect, DataCol, Column, State);
end;
end;{
至于打印,就更为简单,你在QuickRep上放置两个QRLabel,
并在各自的OnPrint事件中获取所需数据即可。
}