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

Вниз

TitleButtons в RxDBGrid   Найти похожие ветки 

 
Developerr ©   (2004-01-14 16:18) [0]

Ув. мастера, подскажите, пожалуйста, следующее:
При нажатии на Title Button одной из колонок RxDBGrid, я сортирую данные сразу по 2-м полям, причем эти поля не выводятся в Grid"е либо по одному полю, которое тоже не выводится в Grid"e, т.е. сортирую не по тому полю которое отображается в Grid"e, а то другому. А именно, например, кликаю по заголовку поля Должность, а сортирую не по названию должностей, а по коду должностей. В результате не появляется треугольник на Title Button. Можно ли сделать так чтобы этот треугольник все-таки появлялся?

Код у меня такой:

procedure TGridForm.RxDBGrid1TitleBtnClick(Sender: TObject; ACol: Integer;
Field: TField);
begin
if (Field.FieldName<>"Dep")and(Field.FieldName<>"POST") then
MainForm.Table1.IndexFieldNames := Field.FieldName
else
if (Field.FieldName="Dep")then
MainForm.Table1.IndexFieldNames := "CodeDep;CodeP"
else
MainForm.Table1.IndexFieldNames := "CodeP";
end;


Спасибо.


 
Wizard_Ex ©   (2004-01-14 17:57) [1]

Попробуй EhLib
Этот Grid позволяет тебе делать все самому в этом случае
как хочешь.


 
ЮЮ ©   (2004-01-15 06:45) [2]

RxDBGrid позволяет рисовать треугольник, а не рисует. Для рисования надо написать обработчик
Написать обработчик

procedure TGridForm.RxDBGrid1 GetBtnParams(Sender: TObject; Field: TField;
AFont: TFont; var Background: TColor; var SortMarker: TSortMarker;
IsDown: Boolean);
begin
if
(AnsiCompareText(MainForm.Table1.IndexFieldNames, Field.FieldName) = 0) or
(AnsiCompareText(Field.FieldName , "Dep") = 0) and
(AnsiCompareText(MainForm.Table1.IndexFieldNames, "CodeDep;CodeP") = 0) or
(AnsiCompareText(Field.FieldName , "POST") = 0) and
(AnsiCompareText(MainForm.Table1.IndexFieldNames, "CodeP") = 0)
then
SortMarker := smDown
else
SortMarker := smNone;
end;



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
3-83113
Vi0let
2003-12-28 09:06
2004.01.26
Господа, скажите, как произвольно вкл/выкл обновление TGrid.


8-83213
Meteor
2003-09-22 22:14
2004.01.26
TMediaPlayer


6-83225
S@shka
2003-11-23 01:51
2004.01.26
POP3


1-83173
cobby
2004-01-15 02:43
2004.01.26
получить текущую ширину popupmenu


6-83231
DelphiN!
2003-11-23 11:10
2004.01.26
Как проверить запущен ли уже сервер или нет?