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

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

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

Delphi.int.ru Expert

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

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

#   

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


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

Подробнее »



Вопрос # 4 598

/ вопрос открыт /

Здравствуйте!
Подскажите как построить график имея два массива а и в, где массив а - ось Х, а в - Y. Нарисовать надо канвой на Image.
Заранее благодарен!!!

Дмитрий Стариков Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задал: Дмитрий Стариков (статус: Посетитель)
Вопрос отправлен: 22 сентября 2010, 03:06
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 4; последнее сообщение — 24 сентября 2010, 10:21; участников в обсуждении: 3.
AlexMPEI

AlexMPEI (статус: 1-ый класс), 22 сентября 2010, 09:59 [#1]:

сначала можно выбрать цвет линии через Canvas.Brush.Color

Image1.Canvas.MoveTo(a[0], b[0]);
for i:=1 to length(a)-1 do
begin
Image1.Canvas.LineTo(a[i], b[i]);
end;
Ерёмин А.А.

Ерёмин А.А. (статус: *Администратор), 22 сентября 2010, 12:15 [#2]:

Цвет линии — Canvas.Pen.Color.
Дмитрий Стариков

Дмитрий Стариков (статус: Посетитель), 23 сентября 2010, 20:57 [#3]:

Подскажите, что я делаю не так??
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39



procedure TFmEURUSD.ButLoadKotChasYesClick(Sender: TObject);
begin
AssignFile(SaveChasKot,'D:\sim\Программирование\Delhpi\Проект\Основная\EUR_USD_Chas_Kot.txt');

Reset(SaveChasKot);
while not Eof(SaveChasKot) do //читаем из файла....
begin
read(SaveChasKot,KotChas[i]);
Inc(i);
end;
CloseFile(SaveChasKot);

ImChas.Canvas.MoveTo(intVrChas[1], 500-KotChas[1]);
for i:=1 to length(intVrChas)-1 do
begin
ImChas.Visible:=True;
Canvas.Pen.Color:=ClRed;
ImChas.Canvas.LineTo(intVrChas[i], 500-KotChas[i]);
end;
procedure TFmEURUSD.ButLoadInrVrChasYesClick(Sender: TObject);
begin
AssignFile(SaveIntVrChas,'D:\sim\Программирование\Delhpi\Проект\Основная\EUR_USD_Chas_IntVr.txt');

Reset(SaveIntVrChas);
while not Eof(SaveIntVrChas) do //читаем из файла....
begin
read(SaveIntVrChas,intVrChas[i]);
Inc(i);
end;
CloseFile(SaveIntVrChas);
z:=IntVrChas[1];


// Для проверки

Edit2.Text:=IntToStr(intVrChas[1]);
Edit3.Text:=IntToStr(intVrChas[2]);
Edit4.Text:=IntToStr(intVrChas[3]);
end;

Вне зависимости от очередности вторая процедура не срабатывает, т.е. если начинать со второй, то не срабатывает первая, только после нескольких нажатий??? И рисует зеленым????
AlexMPEI

AlexMPEI (статус: 1-ый класс), 24 сентября 2010, 10:21 [#4]:

а что за массивы intVrChas и KotChas? где они определены?
при нажатии на первую кнопку ButLoadKotChasYesClick ты заполняешь массив KotChas, потом используешь два массива intVrChas и KotChas, но, как я понимаю, intVrChas будет заполнен только после нажатия на вторую кнопку.
А во второй у тебя вообще нет рисования. :)
и ImChas.Visible:=True; не надо делать в цикле каждый раз.
Выложи весь проект - так не совсем понятно.

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

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