Delphi Seattle と iOS/Android 用の TChart コンポーネントを使用して、棒シリーズ チャートを作成しました。バーをクリックすると、ポップアップ/凡例/吹き出しが正確な値でバーの上に表示されるようにする簡単な方法はありますか?
ClickSeries イベントに遭遇しましたが、毎回このイベントからコールアウトを再作成することなく、これを行うためのより簡単な方法/より論理的な方法はありますか? また、このシリーズにコードを追加すると (テストのために、showmessage(inttostr(valueindex)) を 1 つ実行したことにも気付きました。さらに、マウス ダウン イベントが発生するたびに赤い境界線が表示されます。
(利用可能な場合) この境界線を赤ではなく青自体に変更する簡単な方法と、クリック時にコールアウトを自動的に表示する簡単な方法があると仮定すると、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;