Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 05.07.2010, 12:05   #1
MSD
Пользователь
 
Регистрация: 23.03.2009
Сообщений: 85
По умолчанию Возможно ли в DBGRID

Добрый день... Скажите пожалуйста возможно ли сделать в DBGrid автопоиск ну чтобы вводишь буквы а он автоматом искал по столбцу и не сворачивал таблицу как с фильтрацией, но без использования всяких дополнительных компонентов.... Если можно то как? Спасибо.
MSD вне форума Ответить с цитированием
Старый 05.07.2010, 12:37   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну вообще по-моему он без "толкача" на такое не способен, но можно его немного подкрутить:
Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, DBTables, Grids, DBGrids;

type
  TDBGrid=class(DBGrids.TDBGrid)
  public
   searchStrings:string;
  end;


  TForm1 = class(TForm)
    DBGrid1: TDBGrid;
    Table1: TTable;
    DataSource1: TDataSource;
    procedure DBGrid1KeyPress(Sender: TObject; var Key: Char);
    procedure DBGrid1CellClick(Column: TColumn);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char);
begin
 with TDBGrid(sender) do begin
  if IsCharAlphaNumeric(key) then searchStrings:=searchStrings+key;
  DataSource.DataSet.Locate('name',searchStrings,[loPartialKey]);
 end;
end;

procedure TForm1.DBGrid1CellClick(Column: TColumn);
begin
 DBGrid1.searchStrings:='';
end;

end.
Примитивно но по первым буквам строки найти может.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.07.2010, 21:25   #3
MSD
Пользователь
 
Регистрация: 23.03.2009
Сообщений: 85
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Примитивно но по первым буквам строки найти может.
Спасибо, а как сделать чтоб он проходил дальше если допустим вариантов несколько, ну как поиск далее.... Спасибо
MSD вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Из Dbgrid в другой Dbgrid Милана666 БД в Delphi 12 21.06.2015 09:50
Перемещение даннах из dbgrid в dbgrid Hobbit_88 БД в Delphi 7 10.06.2009 13:33
перенос данных из DBGrid в DBGrid KingSize БД в Delphi 17 24.04.2009 09:30
Возможно ли... SunKnight БД в Delphi 9 27.02.2008 02:51