Форум: Форум C++Разное
Новые темы: 00
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Телефонный справочник
 
 автор: AVS   (22.06.2008 в 17:22)   письмо автору
342.5 Кб
 
 

Всем привет!

Скажите, пожалуйста, посредством какого компонента можно реализовать телефонный справочник? Пробовал через StringGrid, но мне надо реализовать такую возможность поиска, при которой таблица прокручивалась бы автоматически на строку, в которой есть соответствие, кроме того эта строка выделялась. Еще надо сделать так, чтобы в зависимости от клика на каком-либо столбце выполнялась сортировка всей таблицы. Я приложил готовый exe программы, на подобии которой надо реализовать справочник.

Среда разработки: Borland C++ Builder 6

  Ответить  
 
 автор: ddhvvn   (24.06.2008 в 10:01)   письмо автору
 
   для: AVS   (22.06.2008 в 17:22)
 

Все это можно сделать на StringGrid! Я уже делал =)

  Ответить  
 
 автор: XPyCT   (24.07.2008 в 10:00)   письмо автору
 
   для: AVS   (22.06.2008 в 17:22)
 

EstringGrid есть свойство Row и Сol;

к примеру у вас 10 строк вам нужно переити к 5 строке путем ввода числа в едит, и 3 колонке


StringGrid1->Row=StrToInt(Edit1->Text);
StringGrid1->Col=3;

Вот таким макаром можно перейти к нужным позициям

далее возможность поиска! опять же подразумеваем что есть какоето текстовое поле для ввода начального значения - поиска (пусть будет едит2)!
предположим первая колонка для поиска и там хранятся телефоны

for(int i=1; i<StringGrid1->RowCount; i++)
if(AnsiContainsText(StringGrid1->Cells[1][i], Edit2->Text))
   StringGrid1->Row=i;


AnsiContainsText Модуль: SysUtils.hpp

по поводу выделения строки

StringGrid1 имеет своисво Options
к примеру разрешить редактирование таблицы можно так

//разрешаем
StringGrid1->Options<<goEditing;
//Запрещаем
StringGrid1->Options>>goEditing;

ну и как сделать скролинг на последок

NCol = 1+Random(15);
  NRow = Random(4096);
  StringGrid1->ScrollBy(0,StringGrid1->Row-NRow);
  StringGrid1->Row  = NRow;


поэксперементируйте с этим кодом !
надеюсь вам помогло выше описанное
если встанет проблема с удалением строки это тоже возможно ))

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования