|
Вопрос # 1 260/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты! Воприсик на троечку.
Chart1. Series [0]. Marks.Visible := … убирает/показывает все флажки Series [0],
хотелось бы во время Chart1.SeriesList[0].AddXY(IntX, IntY,'',clRed) и при IntY=0 … Marks.Visible := false а при IntY>0 …Marks.Visible := true.
Команды Chart1.Series[0].Components[IntY].Marks.Visible := к сожалению не существует. Уверен, что ответ где-то рядом но не доганяю.
И где еще, кроме \Soft\Delphi7\Demos\TeeChart\teedemo.dpr, мона почитать об этам замечательном кампоненте
 |
Вопрос задал: Vics (статус: Посетитель)
Вопрос отправлен: 9 января 2008, 16:57
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Всего сообщений: 1; последнее сообщение — 16 сентября 2010, 12:55; участников в обсуждении: 1.
|
Зелебоба (статус: Посетитель), 16 сентября 2010, 12:55 [#1]:
Есть вот такой обходной маневр:
Для каждой точки (или группы точек) графика, для которых необходимо вывести флажок, создаешь ОТДЕЛЬНУЮ серию. Пример кода:
procedure TForm1.FormShow(Sender: TObject);
var
Aseries: TLineSeries;
begin
//x- по очереди (счетчик), по y - собственно значения, потом - метка, которая будет по гориз. оси
Chart1.Series[0].AddXY(1,1,'a');
Chart1.Series[0].AddXY(2,5,'b');
Chart1.Series[0].AddXY(3,3,'c');
Chart1.Series[0].AddXY(4,4,'d');
Chart1.Series[0].Marks.visible:= false;
Chart1.Series[0].Title:= 'ку-ку';
Chart1.Series[0].SeriesColor:= clGreen;
Aseries:= TLineSeries.Create(Chart1);
Aseries.Assign(Chart1.Series[0]);
Aseries.Active:= true;
Aseries.Clear;
Aseries.SeriesColor:= Chart1.Series[0].SeriesColor;
Chart1.AddSeries(Aseries);
Chart1.Series[1].ShowInLegend:= false;
Chart1.Series[1].AddXY(2,5,'b');
Chart1.Series[1].Marks.visible:= true;
Chart1.Series[1].Marks.Style:= smsValue;
Aseries:= TLineSeries.Create(Chart1);
Aseries.Assign(Chart1.Series[0]);
Aseries.Active:= true;
Aseries.Clear;
Aseries.SeriesColor:= Chart1.Series[0].SeriesColor;
Chart1.AddSeries(Aseries);
Chart1.Series[2].ShowInLegend:= false;
Chart1.Series[2].AddXY(3,3,'c');
Chart1.Series[2].Marks.visible:= true;
//по условию мне надо было по оси X выводить метки, а не цифры:
Chart1.Series[2].Marks.Style:= smsValue;
end;
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|