|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
Как передавать данные из listbox
Здравствуйте! вот таким образом заполняется listbox
Код:
procedure TForm1.AddToMemoCb(AFileName,Atrib:String; ASize,Aid,Arews:Integer); begin listbox1.Items.Add(Format('id: %d; File: %s; Size: %d; Reviews: %d; Attribute: %s',[Aid,AFileName,ASize,Arews,Atrib])); end; Код:
procedure TForm1.Button2Click(Sender: TObject); begin FileImg('G:\leon\delphis\delphi64\sql2\05\Win32\Debug\db\',AddToMemoCb); end; Код:
procedure TForm1.AddToDbCb(AFileName,Atrib:String; ASize,Aid,Arews: Integer); begin SqlConnection1.Open; try SqlQuery1.SQL.Text := 'INSERT INTO test1 (id, name, reviews, size, attribute) VALUES (:id, :name, :reviews, :size, :attribute)'; {INSERT INTO Info (id,Cost,city) VALUES (1,200, 'Pune'), (2, 150,'USA'), (3,345, 'France'); } SqlQuery1.ParamByName('id').AsInteger := Aid; SqlQuery1.ParamByName('name').AsString := AFileName; SqlQuery1.ParamByName('reviews').AsInteger := random(5);// Arews; SqlQuery1.ParamByName('size').AsInteger := ASize; //inttostr(imgsize); SqlQuery1.ParamByName('attribute').AsString := 'fff'; SQLQuery1.ExecSQL; Memo1.Lines.Add('Запись_добавлена='+inttostr(Aid)+Afilename+inttostr(ASize)); finally //PachImage; //добавка в listbox5 SqlConnection1.Close; end; //Application.ProcessMessages; end; |
#2
|
|||
|
|||
screen
listbox1a.jpg
на скрине видно что строка разделена точкой с запятой. можно ли передавать их? пр: label1:=id; label2:=file; label3:=size; тогда станет понятней (мне). вообще такое возможно? через листбокс |
#3
|
|||
|
|||
Ну можено парсить обратно. Но я бы просто создал бы объектики и привязал их к итемам листбокса (через AddObject).
Код:
type TFileItemData = class FileName : String; Atrib : String; Size : Integer; id : Integer; rews:Integer; function toString : String; end; function TFileItemData.toString : String begin Format('id: %d; File: %s; Size: %d; Reviews: %d; Attribute: %s',[id,FileName,Size,rews,Atrib]); end; Код:
procedure TForm1.AddToMemoCb(AFileName,Atrib:String; ASize,Aid,Arews:Integer); var obj : TFileItemData; begin obj := TFileItemData.Create; obj.id = aid; obj.FileName := AFileName; obj.Size := ASize; obj.rews := Arews; obj.Atrib := Atrib; listbox1.Items.AddObject(obj.toString,obj); end; Код:
obj := ListBox1.Items.Objects[0]; // Здесь индекс элемента AddToDbCb(obj.FileName,obj.Atrib, obj.Size, obj.id, obj.rews); |
Этот пользователь сказал Спасибо lmikle за это полезное сообщение: | ||
leon2009 (13.10.2023)
|
#4
|
|||
|
|||
застрял
ругается
Код:
procedure TForm1.Button3Click(Sender: TObject); var i,j,k:integer; obj : TFileItemData; begin obj.id:=1111; obj.FileName := '222222'; obj.Size := 333333; obj:=listbox1.Items.Objects[1]; AddToMemoCb2(obj.FileName,obj.Size,obj.id); end; Код:
obj:=listbox1.Items.Objects[1]; |
#5
|
|||
|
|||
картинка
error1a.jpg
скрин на всякий |
#6
|
|||
|
|||
я про
я про в общем:
Код:
obj:=ListBox1.Items.Objects[ListBox1.ItemIndex] as TFileItemData; Код:
obj:=ListBox1.Items.Objects[1] as TFileItemData; Последний раз редактировалось leon2009, 14.10.2023 в 20:58. |