![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Перенос елементов из 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;