Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2007.09.23;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.043 c
2-1188365803
Алик
2007-08-29 09:36
2007.09.23
Как сделать окно главным относительно других?


2-1188547038
malyar
2007-08-31 11:57
2007.09.23
дерективы компилятора


2-1188221033
cvg
2007-08-27 17:23
2007.09.23
Не компилирует функцию, возвращающую структуру :(


15-1187816910
antonn
2007-08-23 01:08
2007.09.23
поломаный google


2-1188369608
cvg
2007-08-29 10:40
2007.09.23
Как обращаться к предыдущим точкам графика TChart?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский