![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
привет помогите пожалуста как сделать хранение второго значения в ListBox
|
|
#2
|
||||
|
||||
|
Код:
listbox.items.objects |
|
#3
|
|||
|
|||
|
Цитата:
а как вывести это в label1 ? |
|
#4
|
||||
|
||||
|
Оффтоп:
Цитата:
![]() Для начала заявим свой тип данных чтоб не путать Код:
... type PStr = ^TStr; TStr = string; ... Код:
// массив выбран для примера, чтоб сильно не мучиться с заполнением
var
LBText: array[0..1] of array[0..4] of string =
(('Пункт 1', 'Пункт 2', 'Пункт 3', 'Пункт 4', 'Пункт 5'),
('Значение 1', 'Значение 2', 'Значение 3', 'Значение 4', 'Значение 5'));
procedure TForm1.ButtonClick(Sender: TObject); // наполнение ListBox
var
i: integer;
p: PStr;
begin
for i:= 0 to 4 do
begin
// принцип такой -
// добавляете новый пункт, одновременно вешаете на него и данные
New(p);
p^:= LBText[1, i];
ListBox.Items.AddObject(LBText[0, i], TObject(p));
end;
end;Код:
procedure TForm1.ListBox1Click(Sender: TObject); begin Label1.Caption:= PStr(ListBox1.Items.Objects[Listbox1.ItemIndex])^; end; |
|
#5
|
|||
|
|||
|
Цитата:
ошибку выдает не получается |
|
#6
|
||||
|
||||
|
Показывайте где
|
|
#7
|
|||
|
|||
|
Цитата:
Код:
unit Unit1;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls;
type
TForm1 = class(TForm)
ListBox1: TListBox;
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
procedure ListBox1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
LBText: array;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
p: PStr;
begin
for i:= 0 to 4 do
begin
// принцип такой -
// добавляете новый пункт, одновременно вешаете на него и данные
New(p);
p^:= LBText[1, i];
ListBox.Items.AddObject(LBText[0, i], TObject(p));
end;
end;
procedure TForm1.ListBox1Click(Sender: TObject);
begin
Label1.Caption:= PStr(ListBox1.Items.Objects[Listbox1.ItemIndex])^;
end;
end.Последний раз редактировалось M.A.D.M.A.N., 14.04.2014 в 18:00. |