|
Вопрос # 668/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты!
При работе с диаграммой (TChart) как можно отображать координаты положения курсора мыши на графике?
Приведенная ниже процедура показывает X, Y координаты формы:
procedure TFormChart.Chart1MouseMove(Sender: TObject; Shift: TShiftState;
X, Y: Integer);
begin
Label1.Caption:=IntToStr(X)+':'+IntToStr(Y);
end;
Как реализовать следующую задачу:
Есть таблица, состоящая из двух столбцов. В одном столбце значения x-ов, а в другом y-ков. Надо анимационно показать как берется число (сначала x затем y) из таблицы откладывается на соответствующей оси и рисуется точка на графике. Так пока таблица не закончится. Таблицу вводит пользователь.
Наташа
 |
Вопрос задала: Наташа (статус: Посетитель)
Вопрос отправлен: 25 июня 2007, 07:56
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Градов Ю.М.
Здравствуйте, Наташа!
Для x и y необходимо ввести поправочные коэффициенты. Можно сделать экспериментальным путем. Координаты y идут наоборот, сверху вниз.
Доводите до точки графика X=0 и записываете положение X мышки (к1). Затем до Y=0 - след положение Y мышки(k2).
TFormChart.Chart1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Label1.Caption:=IntToStr(X-k1)+':'+IntToStr(k2-Y);
Для анимации воспользуйтесь процедурой перехода указателя мышки в нужную позицию(приложение). Можно сделать в цикле for - end; Сопровождать анимацию звуком или пояснениями - компонент MediaPlayer.
Удачи!!!
Приложение: Переключить в обычный режим- var
- p: TPoint;
- begin
- if GetCursorPos(p)=true then
- begin
- SetCursorPos(p.X+5,p.Y);
- Button6.Left:=Button6.Left+5;
- end;
- end;
 |
Ответ отправил: Градов Ю.М. (статус: 8-ой класс)
Время отправки: 25 июня 2007, 09:45
|
Мини-форум вопроса
Мини-форум пуст.
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|