Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Перенос елементов из ListBox в StringGrid [D7, XP]


R0k ©   (2009-03-29 14:28:00) 

Здравствуйте! Не могу понять как перенести елементы из lb в sg.
Хотя бы принцип.
В листбоксе находятся следующие элементы:

5        //кол-во учеников
3        //кол-во оценок у каждого ученика
Antoine
50
40
43
Claudine
28
40
32
Luc
26
43
55


KilkennyCat   (2009-03-29 16:56:00) [1]

strtoint - это вообще-то надо проверять, либо strtointdef использовать


Palladin   (2009-03-29 16:43:00) [2]

ты повторил мою ошибку умножения на 4, с чего ты взял что на 4


R0k   (2009-03-29 16:42:00) [3]

Да пришлось чуток покумекать, зато все получилось. Выкладываю 100% работающий, еще теплый :) код переноса инфы из ListBox в StringGrid. Palladin респект.

procedure Tfrm.FormCreate(Sender: TObject);
begin
sg.rowcount:=strtoint(lb.Items[0]);
sg.ColCount:=strtoint(lb.Items[1])+1;
end;

procedure Tfrm.btn_transfertClick(Sender: TObject);
var i,j,ne,nt:integer;
begin
ne:=strtoint(lb.Items[0]);
nt:=strtoint(lb.Items[1]);

for i:=0 to ne-1 do
begin
 sg.Cells[0,i]:=lb.Items[(i*4)+2];
 for j:=1 to nt do
  sg.Cells[j,i]:=lb.items[(i*4)+(j+2)];
end;

end;


R0k   (2009-03-29 14:58:00) [4]

Огромное спасибо!!!


Palladin   (2009-03-29 14:56:00) [5]

есть ошибка... сам найдешь...


Palladin   (2009-03-29 14:54:00) [6]

Var
 i,c:Integer;
 nLCount,nSCount:Integer;

nLCount:=StrToInt(lb.Items[0]);
nSCount:=StrToInt(lb.Items[1]);

sg.RowsCount:=nSCount+1;
sg.FixedRows:=1;
sg.ColsCount:=nLCount;
sg.FixedCols:=0;

For i:=0 to nLCount-1 Do
 Begin
  sg.Cells[i,0]:=lb.Items[i*4];
  For j:=0 to SCount-1 Do
   sg.Cells[i,j]:=lb.Items[i*4+j];
 End;


Наверх

Титульная страница Поиск, карта сайта Написать письмо