Форум: "Основная";
Текущий архив: 2011.12.25;
Скачать: [xml.tar.bz2];
ВнизTChart... Найти похожие ветки
← →
istok (2010-07-01 10:58) [0]есть гистограмма. как понять, на какой из столбиков (хочется его индекс, порядковый номер..) кликнули?
обрабатываю Chart1ClickSeries, испольщую GetCursorValues - но как по x,y понять, какой это кусочек гистограммы или пирога...?
цель - реализовать дрилдаун....
← →
12 © (2010-07-01 17:50) [1]procedure TForm1.Chart1ClickSeries(Sender: TCustomChart;
Series: TChartSeries; ValueIndex: Integer; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
ShowMessage(Series.ValueMarkText[ValueIndex]);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Chart1.Series[0].AddArray([1,2,3,4,5,6,7,8,9,10])
end;
← →
istok (2010-07-02 15:28) [2]спасибо большое
а есть ли примеры кода как перекрашивать кусочек серии при наведении мышью?
← →
12 © (2010-07-02 15:50) [3]procedure TForm1.Chart1ClickSeries(Sender: TCustomChart;
Series: TChartSeries; ValueIndex: Integer; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Series.ValueColor[ValueIndex]:=clRed;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Chart1.Series[0].AddArray([1,2,3,4,5,6,7,8,9,10])
end;
procedure TForm1.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var
Pt: TPoint;
begin
Application.ProcessMessages;
Pt.x := Chart1.Left + (Chart1.Width div 2);
Pt.y := Chart1.Top + (Chart1.Height div 2);
Pt := ClientToScreen(Pt);
Pt.x := Round(Pt.x * (65535 / Screen.Width));
Pt.y := Round(Pt.y * (65535 / Screen.Height));
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTDOWN, Pt.x, Pt.y, 0, 0);
Mouse_Event(MOUSEEVENTF_ABSOLUTE or MOUSEEVENTF_LEFTUP, Pt.x, Pt.y, 0, 0);
end;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2011.12.25;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.004 c