Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.08.21;
Скачать: [xml.tar.bz2];

Вниз

Как всегда DBGrid   Найти похожие ветки 

 
niko4543   (2003-07-28 09:46) [0]

Здорова Братва.
Я пишу на этот форум потому-что у меня нет времени на реализацию данного вопроса.
Я прошу вас помогите пожайлуста кодом или советом лучше и то и другое.

Вопрос вот в чём мне надо сделать сотировку данных в DBGrid"e тоесть пользователь щёлкает на заголовок и записи выстраиваются по алфавиту.

Заранее спасибо и сильно не ругайтесь на то что задаю глупый вопрос.


 
Reindeer Moss Eater   (2003-07-28 09:57) [1]

А где сам вопрос-то?


 
Sergey13   (2003-07-28 09:58) [2]

Удалено модератором
Примечание: Не суди по себе, если ты фраер, но это не значит, что и остальные тоже


 
Anatoly Podgoretsky   (2003-07-28 09:59) [3]

Отложить этот вопрос, на тот период, когда появится время.


 
AbrosimovA   (2003-07-28 10:19) [4]

Сортировка, используя индексы.

type
TMainForm=class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
SetSort: TRadioGroup;
procedure DBGrid1TitleClick(Column: TColumn);



procedure TMainForm.DBGrid1TitleClick(Column: TColumn);
begin
Case SetSort.ItemIndex of
0: IOp:=[];//По возрастанию
1: IOp:=[ixDescending];По убыванию
end;
Case Column.Index of
0: with Table1 do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iFio").Name<>"" then //Если индекс iFio
DeleteIndex("iFio"); //есть, то удалить
AddIndex("iFio","Fio",Iop);//создать индекс iFio
IndexName:="iFio";//сортировка по столбцу FIO
Exclusive:=false;
Open;
end;

1: with Table1 do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iAddress").Name<>"" then
DeleteIndex("iAddress");
( "iAddress","Address",Iop) Сортировка, используя индексы.

type
TMainForm=class(TForm)
DBGrid1: TDBGrid;
DBNavigator1: TDBNavigator;
SetSort: TRadioGroup;
procedure DBGrid1TitleClick(Column: TColumn);



procedure TMainForm.DBGrid1TitleClick(Column: TColumn);
begin
Case SetSort.ItemIndex of
0: IOp:=[];//По возрастанию
1: IOp:=[ixDescending];По убыванию
end;
Case Column.Index of
0: with Table1 do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iFio").Name<>"" then //Если индекс iFio
DeleteIndex("iFio"); //есть, то удалить
AddIndex("iFio","Fio",Iop);//создать индекс iFio
IndexName:="iFio";//сортировка по столбцу FIO
Exclusive:=false;
Open;
end;

1: with Table1 do begin
Close;
Exclusive:=true;
if IndexDefs.Find("iAddress").Name<>"" then
DeleteIndex("iAddress");
AddIndex("iAddress","Address",Iop);
IndexName:="iAddress";//сортировка по столбцу Address
Exclusive:=false;
Open;
end;
end;
end;


 
Zacho   (2003-07-28 10:19) [5]

Написать обработчик события OnTitleClick, в котором:
1. Если DBGrid подключен к TTable, то подключать индекс для поля, по заголовку колонки которого кликнули.
2. Если к TQuery, то изменить в ORDER BY запроса имя поля на нужное и переоткрыть Query.


 
Sergey13   (2003-07-28 10:21) [6]

>Удалено модератором
>Примечание: Не суди по себе, если ты фраер, но это не значит, что и остальные тоже
Да я и не сужу. Просто хотел стилизовать ответ под стиль вопроса. Не думал, что обращение "Здорова Братва" - это к местным. 8-(



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

Форум: "Базы";
Текущий архив: 2003.08.21;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.008 c
8-68411
Rradion
2003-04-23 14:23
2003.08.21
Где в Delphi живёт PaintBox ???


1-68364
Zhenka
2003-08-08 10:14
2003.08.21
Как удалить заданное слово из файла


14-68509
Гамлет
2003-08-05 14:40
2003.08.21
Вопрос на засыпку: ASCII и ANSI


1-68317
Chipset
2003-08-08 20:20
2003.08.21
КАК показать окно поверх ВСЕГО?


4-68586
dimonf
2003-06-20 11:49
2003.08.21
Каким образом правильно синхронизировать функцию потока?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский