使用 Delphi Seattle 和 iOS/Android 的 TChart 组件,我有一个条形系列图表。有没有一种简单的方法,这样当我点击一个栏时,一个弹出/图例/标注会显示在栏的顶部,并带有确切的值?
我遇到了 ClickSeries 事件,但是有没有更简单/更合乎逻辑的方法来做到这一点,而不必每次都从该事件中重新创建标注?我还注意到,当我向这个系列添加代码时(为了测试,我做了一个 showmessage(inttostr(valueindex))。此外,每当触发鼠标按下事件时,都会出现一个红色边框。
假设(如果可用)有一种简单的方法可以将此边框更改为本身的蓝色而不是红色,并在单击时自动显示标注,那么在 IDE 的 TChart 编辑器中的哪个位置是可能的?
从图表编辑器中,我尝试转到系列 -> 常规 -> 悬停,但这里没有得到我想要的效果。
更新:这是我在吃完所有东西后想出的。我可以按照最初的要求显示/隐藏标注,但仍然无法弄清楚如何修改出现的红色边框。现在,当触发 mousedown 事件时,标注的文本也会显示为红色。
procedure TmTestForm.RawDataSeriesAfterAdd(Sender: TChartSeries;
ValueIndex: Integer);
begin
RawDataSeries.Marks.Item[ValueIndex].Visible:=false;
end;
procedure TmTestForm.RawDataChartClickSeries(Sender: TCustomChart;
Series: TChartSeries; ValueIndex: Integer; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if Series.Marks.Item[ValueIndex].Visible=TRUE then
Series.Marks.Item[ValueIndex].Visible:=FALSE
else
Series.Marks.Item[ValueIndex].Visible:=TRUE;
end;