Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.09.23;
Скачать: CL | DM;

Вниз

Графика в дельфи   Найти похожие ветки 

 
alegad ©   (2007-07-12 10:27) [0]

Можно ли в дельфи получать значения переменных на графике при наведении курсора на это значение?


 
tesseract ©   (2007-07-12 10:34) [1]

Можно. Вопрос исчерпан или задачу опишешь по нормальному.


 
Инс ©   (2007-07-12 10:55) [2]


> Можно.


Неа, нельзя ;)

В Delphi - нельзя, в программе, написанной на Delphi - можно.


 
zorik ©   (2007-07-12 11:14) [3]


> alegad ©  

каким образом выводишь график и на что? используешь компонент (TChar например) или рисуешь на канве?


 
RayGun ©   (2007-07-14 17:53) [4]

Если TChart, то у него есть TSeries.CalcXPos и TSeries.CalcYPos, которым в качестве аргумента передается индекс элемента Series. Можно, например, как самый простой вариант, в OnMouseMove TChart"а циклом пробежаться по значениям в Series на предмет определения текущей точки, на которую указывает курсор мыши (если, конечно, в Series разумное кол-во элементов).


 
Kolan ©   (2007-07-14 18:51) [5]

> OnMouseMove

У сери есть свойство, если не Move, то ClickSerie точно


 
RayGun ©   (2007-07-14 19:14) [6]

> Kolan ©   (14.07.07 18:51) [5]
ClickSerie - это надо кнопку мыши нажимать, а автор спрашивал, чтобы при наведении курсора работало.

У компании Steema (http://www.steema.com), которая вроде как этот TChart и делала, по крайней мере для C# есть Chart с событием Move для Series. Может, есть обновление и для Delphi, надо посмотреть.


 
RayGun ©   (2007-07-14 19:26) [7]

Вот код на C#, который выводил всплывающую подсказку при наведении курсора мыши на определенную точку в Series. Может чем поможет:)

private void tChart_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
try
{
 if (this.MoseEnterSeries != null)
 {
  int tmp = this.MoseEnterSeries.Clicked(e.X, e.Y);
  if (tmp != -1)
  {
   double pval = this.MoseEnterSeries.YValues[tmp];
   DateTime date = Steema.TeeChart.Utils.DateTime(this.MoseEnterSeries.XValues[tmp]);
   double val = this.MoseEnterSeries.GetValueFormPercent(pval);
   string Hint = string.Format("[{0}] {1} {2}", date.ToString("G"), val.ToString("#.0 \"x10\" E+0"), this.MoseEnterSeries.UOM);
   this.Hint.SetToolTip(this.tChart, Hint);
  }
 }
}
catch (Exception ex)
{
 new TExceptionCatcher(ex);
       }
}


 
Johnmen ©   (2007-07-15 01:37) [8]


> RayGun ©   (14.07.07 17:53) [4]

Тебе делать нечего, трупцы подымать?


 
RayGun ©   (2007-07-15 01:49) [9]

Может, оно все еще надо



Страницы: 1 вся ветка

Текущий архив: 2007.09.23;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.028 c
2-1188228228
Антон Шестаков
2007-08-27 19:23
2007.09.23
сортировка при заполнении


9-1143015328
Nic
2006-03-22 11:15
2007.09.23
Шейдеры: с чего начать?


15-1187805320
ANTPro
2007-08-22 21:55
2007.09.23
Разъем питания процессора...


2-1188476752
parivet
2007-08-30 16:25
2007.09.23
Вопрос на засыпку


15-1187794005
lookin
2007-08-22 18:46
2007.09.23
MAC-адрес сетевой карты