|
#1
|
|||
|
|||
В чем ошибка?
Есть форма, на которой 48 эдитов и 148 лэйбэлов, создающихся в Ран-Тайм. Каждому эдиту "принадлежит" три лэйбэла. После нажатия на кнопку, необходимо найти в ListBox'е введеннок слово в эдит, и записать в Label'ы последующие 3 строки, и так надо до 48 эдитов сделать!ниже код, который я написал, но почему-то не получается! Буду признателен за помощь!
Код:
for i:=1 to 48 do begin s:=TEdit( FindComponent( Format( 'Edit%d', [i] ) ) ).Text; for ii:=0 to listbox1.Items.Count-1 do begin if s=listbox1.Items.Strings[i] then begin j:=j+1; TLabel( FindComponent( Format( 'Label%d', [j] ) ) ).Caption:=listbox1.Items.Names[ii+1]; TLabel( FindComponent( Format( 'Label%d', [j+1] ) ) ).Caption:=listbox1.Items.Names[ii+1]; TLabel( FindComponent( Format( 'Label%d', [j+2] ) ) ).Caption:=listbox1.Items.names[ii+1]; j:=i+3; end; end; end; Последний раз редактировалось ~ SaM ~, 20.11.2007 в 22:53. |
#2
|
|||
|
|||
Не проверял, но, возможно, вместо i надо ii в строке
if s=listbox1.Items.Strings[i] then begin |
#3
|
||||
|
||||
Точно! Вот здесь должны совпадать переменные:
Код:
for ii:=0 to listbox1.Items.Count-1 do begin if s=listbox1.Items.Strings[i] then begin |