如何在OnDrawColumnCell事件中获取行号?

发布于 2024-12-21 19:50:07 字数 396 浏览 4 评论 0原文

这就是我的 TDBGrid 组件绘图例程的样子。我正在根据一些规则替换数据库中的值:

void __fastcall TForm_Loadpoint_Details::DBGrid1DrawColumnCell(
  TObject *Sender, const TRect &Rect, int DataCol, TColumn *Column,
  TGridDrawState State)
{
    int row_index = ???;
    AnsiString text = GetCustomizedText(row_index, DataCol);
    DrawText(text);
}

但是我不知道如何判断当前正在呈现哪一行?如果没有这些知识,我无法获取用于显示的数据。

This is how my drawing routine for TDBGrid component looks like. I am replacing values from database based on some rules:

void __fastcall TForm_Loadpoint_Details::DBGrid1DrawColumnCell(
  TObject *Sender, const TRect &Rect, int DataCol, TColumn *Column,
  TGridDrawState State)
{
    int row_index = ???;
    AnsiString text = GetCustomizedText(row_index, DataCol);
    DrawText(text);
}

However I don't know how to tell which row is currently being rendered? Without this knowledge i can't get data for displaying.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦中楼上月下 2024-12-28 19:50:07

您可以使用 Column->Field 对象的 IndexFieldNo 属性,也可以使用访问器类来访问受保护的 < code>TDBGrid::DataLink 属性,然后使用其 ActiveRecord 属性。

You can use the Index or FieldNo property of the Column->Field object, or you can use an accessor class to access the protected TDBGrid::DataLink property and then use its ActiveRecord property.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文