|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
Хранение второго значения в ListBox
привет помогите пожалуста как сделать хранение второго значения в ListBox
|
#2
|
||||
|
||||
Код:
listbox.items.objects — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#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. |
#8
|
||||
|
||||
Оффтоп:
Код в тег [СODE]...[/СODE] оберните пжлст, пока ни кто не видел, не возможно читать (пора уж и самому научиться за столько сообщений-то или в бане пондравилось париться? :-) Где объява своей строки, зачем массив испортили - сначало запустите пример как он есть, чтоб понять как это работает, а затем лишь самодеятельностью занимайтесь, ничему человека жизнь не учит, удивляюсь Я не понял Вашего вопроса, но всё же Вам на него отвечу! Последний раз редактировалось Alegun, 14.04.2014 в 14:43. |
#9
|
||||
|
||||
Цитата:
|
#10
|
|||
|
|||
Цитата:
ошибку выдает в первом implementation потом в var p: PStr; |
#11
|
||||
|
||||
Цитата:
Короче, у меня семёрка, исходник скинуть не могу - работать не будет в вашей среде, посему покажу на словах. Бросьте на форму ListBox, Label и Button Как должно быть в редакторе Код:
type PStr = ^TStr; TStr = string; var LBText: array[0..1] of array[0..4] of string = (('Говядина', 'Свинина', 'Баранина', 'Треска', 'Карп'), ('2р.10к.', '2р.00к.', '1р.70к.', '93к.', '67к.')); procedure TForm1.Button1Click(Sender: TObject); var i: integer; p: PStr; begin for i:= 0 to 4 do begin New(p); p^:= LBText[1, i]; ListBox1.Items.AddObject(LBText[0, i], TObject(p)); end; end; procedure TForm1.ListBox1Click(Sender: TObject); begin Label1.Caption:= PStr(ListBox1.Items.Objects[Listbox1.ItemIndex])^; end; Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#12
|
|||
|
|||
Цитата:
ошибку выдает вот здес Код:
var i: integer; p: PStr; Последний раз редактировалось Admin, 14.04.2014 в 19:20. |