Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 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 Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: 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;

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:53
Выполнено за 0.03 сек.