Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.12.07;
Скачать: CL | DM;

Вниз

Delphi. Поиск и удаление в телефонном справочнике   Найти похожие ветки 

 
Hadgi ©   (2008-10-27 04:52) [0]

Пишу справочник в Delphi. В программировании новичок.
Для справочника использую компонент StringGrid (так надо преподу), 5 штук TButton, 3 штуки TRadioButton.
Не могу вообщем организовать процедуру удаления и поиска абонента в StringGride. Поможите на этом месте...


 
Сергей М. ©   (2008-10-27 08:32) [1]

см., например, TStringGrid.Rows/Cols.IndexOf


 
Hadgi ©   (2008-10-27 13:57) [2]

Всмысле? Вроде все свойства грида перепробовал - не получается. я код не понимаю как составить для удаления и поиска...


 
Сергей М. ©   (2008-10-27 14:00) [3]


> Вроде все свойства грида перепробовал - не получается


Показывай как пробовал ..


 
Hadgi ©   (2008-10-27 14:21) [4]

для удаления:

for i:=3 to StringGrid1.RowCount-1 do //-1, т.к. нумерация с 0
for j:=1 to StringGrid1.ColCount-1 do //-1, т.к. нумерация с 0
StringGrid1.Cells[j,i]:=StringGrid1.Cells[j,i+1];
for j:=1 to StringGrid1.ColCount-1 do
StringGrid1.Cells[j,i]:="";
StringGrid1.RowCount:=StringGrid1.RowCount-1;
StringGrid1.SetFocus;
Этот код удаляет строки а не их содержимое.. хотелось бы ещё чтобы удалялась выделенная область с информацией в строке....

а для поиска вобще непонимаю... как сделать чтобы выводилось найденное... вот и прошу помощи...


 
Сергей М. ©   (2008-10-27 14:27) [5]


> для поиска вобще непонимаю


[1] внимательно рассматривал ?
Что тебе там не пониятно ?


> как сделать чтобы выводилось найденное


Куда выводилось-то ?


 
clickmaker ©   (2008-10-27 14:27) [6]

> а для поиска вобще непонимаю

в стринггриде нет встроенных методов для поиска.
Перебором придется, цикл по ColCount/RowCount


 
Hadgi ©   (2008-10-27 14:43) [7]

В поиске непонятно каким образом организовать отбор нужных данных, если через условные операторы, то каким образом организовать их работу? А найденное чтобы выводилось в окне поиска...


 
Сергей М. ©   (2008-10-27 14:51) [8]

Для "отбора" данных в интересующей ячейке существует свойство Cells[]


 
Hadgi ©   (2008-10-27 14:58) [9]

То есть если в условие True, то организовывать вывод найденного на экран, а если False (else), то выводить сообщение о том, что ничего не найдено? !


 
Сергей М. ©   (2008-10-27 15:00) [10]

Это уж как твоей (или препода) душе будет угодно


 
Hadgi ©   (2008-10-27 15:09) [11]

вот так вот организовал запись в файл, вроде переменные инициированы, но делфи прикопался к grid.colcount и grid.rowcount (подчёркнул их красной волнистой линией)... из-за чего? не пойму...

procedure TForm1.Button5Click(Sender: TObject);
var
f: textfile;
i, j: integer;
begin
assignfile(f,Filename);
rewrite(f);
writeln(f, grid.colcount);
writeln(f, grid.rowcount);
for i := 0 to grid.colcount - 1 do
for j := 0 to grid.rowcount - 1 do
writeln(F, grid.cells[i, j]);
closefile(f);
end;


 
Сергей М. ©   (2008-10-27 15:14) [12]

нажми CTRL-F9, произойдет попытка компиляции пргограммы
Ошибки в тексте программы, если таковые имеются, ты увидишь в открывшейся панели внизу окна с этим текстом



Страницы: 1 вся ветка

Текущий архив: 2008.12.07;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.011 c
15-1222800406
axis_of_evil
2008-09-30 22:46
2008.12.07
как получить список процессов ..


1-1203111617
Blind Guardian
2008-02-16 00:40
2008.12.07
Сравнение последовательностей вещественных чисел на сходство


15-1223143297
Cyrax
2008-10-04 22:01
2008.12.07
Устанавливают ли срок службы на сотовые телефоны ?


9-1175779923
ElectriC
2007-04-05 17:32
2008.12.07
Запрет нажатия системных клавиш


1-1203080165
Prohodil Mimo
2008-02-15 15:56
2008.12.07
Как отловить изменение ReadOnly у TEdit ?