Форум: "Основная";
Текущий архив: 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.047 c