|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.04.2007, 17:12 | #1 |
Форумчанин
Регистрация: 24.01.2007
Сообщений: 323
|
ListBox
есть проблема!
Мне нужно, чтобы при выборе определённого рядка в листбоксе, текст этого рядка сравнивается с текстом рядка записи data.ryad которие находятся в файле записей data, и если они идентичны, то вывести содержымое data.textout в Memo1. На первый взгляд - так просто, а у меня только определённый рядок выводит а остальные нет и что ты ему зделаеш?
Всё проще чем вы думаете, нужно только правильно подойти к тому или иному вопросу?
|
02.04.2007, 17:27 | #2 |
Павел Сергеевич
Форумчанин
Регистрация: 05.11.2006
Сообщений: 665
|
Можно исходничек увидеть? Будет все гораздо понятнее...
Познавая других, мы познаем себя.
С'est la vie... |
02.04.2007, 17:38 | #3 |
Форумчанин
Регистрация: 24.01.2007
Сообщений: 323
|
TRe = record
proc : string[50]; opus : String[50]; Zindex:integer; end; var Form1: TForm1; f : file of Tre; data:Tre; i,h:integer; temp:string[50]; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin form1.Memo1.Clear; form1.Memo2.Clear; assignfile(f,fname); reset(f); h:=-1; while not eof(f) do begin read(f,data); listbox1.Items.Add(data.proc); h:=h+1; end; closefile(f); end; // добавление записи в файл procedure TForm1.SpeedButton2Click(Sender: TObject); begin assignfile(f,fname); reset(f); seek(f,sizeof(f)); data.opus:=''; data.proc:=edit2.Text; if memo2.Text<>'' then for i:=0 to memo2.Lines.Count do data.opus:=data.opus+memo2.Lines[i]; if data.proc<>'' then begin data.Zindex:=h+1; write(f,data); label5.Show; timer1.Enabled:=true; listbox1.Items.Add(data.proc); h:=h+1; memo2.Clear; end else begin if (data.proc='') then showmessage('Введіть назву функції чи процедури!'); exit; end; closefile(f); end; procedure TForm1.ListBox1Click(Sender: TObject); begin memo1.Clear; assignfile(f,fname); reset(f); while not eof(f) do begin read(f,data); if listbox1.ItemIndex=data.Zindex then memo1.Text:=data.opus; end; closefile(f); end; но здесь я пытался использовать щётчик... и вобщем у меня щас голова не работает, такчто я чтото не могу ничего усовершэнствовать... да и с листбоксом вообще редко встречаюсь....
Всё проще чем вы думаете, нужно только правильно подойти к тому или иному вопросу?
Последний раз редактировалось ZhekON; 02.04.2007 в 17:41. |
02.04.2007, 17:47 | #4 | ||
Пользователь
Регистрация: 25.03.2007
Сообщений: 18
|
Цитата:
Цитата:
|
||
02.04.2007, 22:22 | #5 |
Форумчанин
Регистрация: 24.01.2007
Сообщений: 323
|
но я веть писал, что я в даном примере использовал щётчик а не строку(это ужэ крайний элемент) а хотелось бы строку, ну чтобы код был проще и без "data.Zindex"
Всё проще чем вы думаете, нужно только правильно подойти к тому или иному вопросу?
|
04.04.2007, 14:44 | #6 |
Форумчанин
Регистрация: 24.01.2007
Сообщений: 323
|
ладно... подскажыте хоть как получить текст выделеного рядка? чтобы потом его сровнять с уже имеещимся рядком в файле-записи.
Всё проще чем вы думаете, нужно только правильно подойти к тому или иному вопросу?
|
04.04.2007, 19:33 | #7 |
_________
Пользователь
Регистрация: 27.03.2007
Сообщений: 69
|
Если честно, то не совсем понял задачу...
А выделенную ячейку в ListBox можно получить так: ListBox1.Items[ListBox1.ItemIndex] |
04.04.2007, 19:34 | #8 |
_________
Пользователь
Регистрация: 27.03.2007
Сообщений: 69
|
Если честно, то не совсем понял задачу...
А текст выделенной ячейки в ListBox можно получить так: ListBox1.Items[ListBox1.ItemIndex] |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ListBox | werser | Помощь студентам | 1 | 29.05.2008 22:32 |
[ C# ]::[ ListBox ] | Fire.id | Общие вопросы .NET | 1 | 13.01.2008 21:07 |
из ListBox в БД | Spectre | БД в Delphi | 5 | 31.12.2007 13:58 |
Listbox | Dexic | Помощь студентам | 1 | 24.06.2007 15:05 |
ListBox | lin | Помощь студентам | 1 | 04.06.2007 13:46 |