【发布时间】:2013-08-05 07:24:26
【问题描述】:
我想显示一个包含诸如 mean Median 、 S.D 、 Range 等值的箱线图表格。 数据表工具仅显示 X,X2 数据不允许自定义数据。我也在尝试使用自定义图例工具,我们可以使用它创建指定网格行和列的表。谁能告诉我如何在表格中输入数据。
谢谢 阿克谢
【问题讨论】:
我想显示一个包含诸如 mean Median 、 S.D 、 Range 等值的箱线图表格。 数据表工具仅显示 X,X2 数据不允许自定义数据。我也在尝试使用自定义图例工具,我们可以使用它创建指定网格行和列的表。谁能告诉我如何在表格中输入数据。
谢谢 阿克谢
【问题讨论】:
如果我没记错的话,您使用的是 VC++。 CustomLegend 工具是一个相当新的工具,恐怕VC++ 缺少一些功能。 我已将其添加到希望在未来版本中实现的愿望清单 (TA05015410/B395)。
同时,请注意 TeeChart ActiveX 支持自定义绘图,因此如果组件中的其他工具不允许您绘制您想要的内容,您可以手动绘制表格。
自定义绘图技术基本上包含一组方法和属性(设置画布笔、画笔和字体,以及绘制线条、形状或文本)以直接在画布上绘图。这些方法通常在 OnAfterDraw 事件中调用,因此可以在每次重绘后重做自定义绘图。
您可以在 TeeChart ActiveX 安装的 \Examples\Visual C++\Version 6\ 文件夹下找到用 VC++ 编写的示例。具体来说,您可以在Dragging Points 项目中看到一个如何使用自定义绘图技术的简单示例。在 DraggingDlg.cpp 文件中,您可以看到 OnAfterDraw 方法中如何使用一些自定义绘图技术:
void CDraggingDlg::OnAfterDrawTChart()
{
// Draw a white circle around the clicked pyramid...
if (-1 != m_ClickedBar)
{
CCanvas aCanvas = m_ctrlChart.GetCanvas();
CPen1 aPen = aCanvas.GetPen();
aPen.SetColor(RGB(255, 255, 255));
aPen.SetWidth(1);
aPen.SetStyle(psDot);
aCanvas.GetBrush().SetStyle(bsClear);
int x = m_ctrlChart.Series(0).CalcXPos(m_ClickedBar);
int y = m_ctrlChart.Series(0).CalcYPos(m_ClickedBar);
aCanvas.Ellipse(x, y, x + 40, y + 40);
}
}
【讨论】: