![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() БОги Delphi 7, помогите смертному ))))))
мне нужно как-то устроить , что-бы при вводе теста в ComboBox, у меня находилось его определение из блокнота. и выводилось на экран либо в Memo либо ещё куда. Очень Нужно, помогите ), если не сложно ) |
#2
|
||||
|
||||
![]() Что значит "находилось его определение из блокнота"?
jmp $ ; Happy End! The Cake Is A Lie. |
#3
|
|||
|
|||
![]() Например я вбиваю слово Математика, а в блокноте есть определение ,
- наука о структурах, порядке и отношениях, которая исторически сложилась на основе операций подсчёта, измерения и описания форм реальных объектов. слово - определение. Это реально ??? |
#4
|
||||
|
||||
![]() Почему нет? составь импровизированную базу данных:
Код:
1 Математика наука о структурах, порядке и отношениях, которая исторически сложилась на основе операций подсчёта, измерения и описания форм реальных объектов. 2 Физика еще одна наука о структурах, порядке и ... Код:
var f:text; ... assignfile(f,'Baza.txt'); reset(f); while not eof(f) do begin readln(f,s); ...//обработка end; Цифры перед именами можно и убрать. Они просто для удобства редактирования вручную. З.Ы. думаю, все же определение не в "блокноте", а в текстовом файле ![]() jmp $ ; Happy End! The Cake Is A Lie. Последний раз редактировалось Bargest, 05.12.2010 в 17:52. |
#5
|
|||
|
|||
![]() а нумерацию 1, 2, 3,... не помешают в сombobox дописывать слова ?
просто я ещё использую PHP код:
|
#6
|
||||
|
||||
![]() Они для удобства. Просто чтоб проще найти было че-нить. Компу пофигу. Можно и без них - распознавание все равно по пустой строке.
мешать они не будут, к тому же можно после чтения их убрать. jmp $ ; Happy End! The Cake Is A Lie. |
#7
|
|||
|
|||
![]() а как он считает из Combobox ? , и как он будет выводить в Memo ???
|
#8
|
||||
|
||||
![]() В мемо
Код:
memo1.Lines.Add(s); Код:
n:=ComboBox1.ItemIndex; inc(n); // ItemIndex с нуля // далее ищем элемент с номером N или же отсчитываем N-1 пустых строк. // Да, не подумал. С циферками в БД попроще. jmp $ ; Happy End! The Cake Is A Lie. |
#9
|
|||
|
|||
![]() Блин, в принципе в голове понятно, но в прогу загнать не получается., Если тебе не трудно можешь мне скинуть такой исходник. а?
|
#10
|
||||
|
||||
![]() исходник - врятли... разве что так, набрость...
Код:
var f:text; ... procedure TForm1.ButtonOKClick(sender:TObject); var i,k,t,err:integer; s,ns:AnsiString; begin i:=ComboBox1.ItemIndex; if i<0 then exit; // ниче не выбрано assignfile(f,'База.txt'); reset(f); while not eof(f) do begin readln(f,s); k:=pos(' ',s); if k>0 then begin ns:=copy(s,1,k-1); delete(s,1,k); val(ns,t,err); if err=0 then if t = i+1 then while (not eof(f))and(s<>'') do begin readln(f,s); Memo1.Lines.Add(s); end; end; end; closefile(f); end; jmp $ ; Happy End! The Cake Is A Lie. |
#11
|
|||
|
|||
![]() Запустилось норм, а реакции нет. какая может быть ошибка ?
|
#12
|
||||
|
||||
![]() Не знаю. Назначил кнопке обработчик?
jmp $ ; Happy End! The Cake Is A Lie. |
#13
|
||||
|
||||
![]() мой вариант, может не самый быстрый но кода мала
![]() Код:
{структура файла *математика наука бла бла бла *чайник орудие пыток} //На форме комбобокс и мемо unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) ComboBox1: TComboBox; Memo1: TMemo; procedure FormCreate(Sender: TObject); procedure ComboBox1Change(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var t:TStringList; i,dlina:integer; begin t:=TStringList.Create; t.LoadFromFile('1.txt'); for i:=0 to t.Count-1 do begin dlina:=length(t[i]); if t[i][1]='*' then ComboBox1.Items.Add(copy(t[i],2,dlina-1)); end; t.Free; end; procedure TForm1.ComboBox1Change(Sender: TObject); var t:TStringList; i,dlina:integer; begin t:=TStringList.Create; t.LoadFromFile('1.txt'); for i:=0 to t.Count-1 do begin if (t[i])=('*'+ComboBox1.Text) then memo1.Text:=t[i+1]; end; t.Free; end; end. Вот проект: Последний раз редактировалось Admin, Сегодня в 10:32. |
#14
|
|||
|
|||
![]() ПАСИБ!!!! )
|