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

Вниз

chart   Найти похожие ветки 

 
Мануха   (2007-08-01 23:27) [0]

Мастера, выручайте.
На форме chart и кнопка.
onclick:

Xz :=100;
 for g:=0 to StringGrid2.ColCount - 1 do
 for i:=0 to StringGrid1.ColCount - 1 do
   begin
     if StringGrid1.Cells[i,0] = StringGrid2.Cells[g,0] then
       begin
         StringGrid1.Cells[i,0] := "";
         Series1.AddY(Xz, IntToStr(?),clBlue);
         Dec(XZ);
       end else
       begin
         Series1.AddY(xz, IntToStr(?),clBlue);
       end;
   end;


Вобщем задача такая, имеется грид1 в котором 100 чисел в порядке возрастания (cols:= 100, rows:=1;). Грид2 заполняется рэндомно на 1000 чисел (cols:= 1000, rows:=1;), гриды используются для наглядности, а так будет массив. Проходимся по каждой ячейке грида2 и смотрим есть ли в гриде1 число из ячейки грида2, если есть то "стираем" его, и рисуем на чарте, уменьшаем координату Y на один. В след раз проверяем и если числа нет в гриде1(оно  из предыдущего шага стерлось) то рисуем на чарте, Y остается предыдущего шага.
Мне кажется что алгоритм составлен не совсем корректно, и проблема что по X нужно показывать каждый шаг по возрастанию начиная с 1...
Спасибо за ответы.


 
Elen ©   (2007-08-02 08:34) [1]

Я привильно поняла тебя, тебе нужно что-то типа этого? :

procedure TForm1.Button1Click(Sender: TObject);
var w,yz,i:integer;
begin
//********* FOR ******************
yz:=100;
for i :=0  to StringGrid1.Rows[0].Count do
begin
if (StringGrid1.Rows[1].IndexOf(StringGrid1.Rows[0].Strings[i])>=0) then begin
 if TryStrToInt(StringGrid1.Rows[0].Strings[i],w) then
  Series1.AddXY(yz,w) else StringGrid1.Rows[2].Add(StringGrid1.Rows[0].Strings[i]);
 StringGrid1.Rows[0].Strings[i]:="";
 dec(yz);*
end else
 if TryStrToInt(StringGrid1.Rows[0].Strings[i],w) then
  Series1.AddXY(yz,w) else StringGrid1.Rows[2].Add(StringGrid1.Rows[0].Strings[i]);
end;
//******* END FOR ****************{}
end;


 
Мануха   (2007-08-02 18:30) [2]

хм...
маленький пример...

массив_a: 1 2 3 4 5 6 7 8 9 10
массив_b: 6 5 5 6 3 4 8 7 5 5 1
рисуем первый столбик(0,10) т.к. еще не выпадало никаких чисел.
первый элемент массива_b - 6, ага, рисуем второй столбик(1,9)
второй элемент массива_b - 5, ок, рисуем третий столбик(2,8)
третий элемент массива_b - 5, хм, рисуем четвертый столбик(3,8)
четвертый элемент - 6, рисуем пятый столбик (4,8)

Y - один и тот же потому что не выпали новые числа.
пятый элемент - 3, рисуем шестой столбик(4,7)
...
типо того


 
Мануха   (2007-08-02 19:51) [3]

вообщем сам разобрался, тему можна закрыть, удалить и т.п. :)



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
1-1181834565
Tack
2007-06-14 19:22
2007.08.26
Как узнать, есть ли в TRichEdit двоичные объекты


15-1185295412
Sergey Masloff
2007-07-24 20:43
2007.08.26
Nokia 6510 самый лучший телефон ;-)


15-1185647837
MsGuns
2007-07-28 22:37
2007.08.26
Хочу выразить признательность модераторам сайта


15-1185460867
БарЛог
2007-07-26 18:41
2007.08.26
Книга по строению автомобиля "для чайников"


2-1185522909
Ekate
2007-07-27 11:55
2007.08.26
потоки