![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Нумерация ячеек в DBGRID [D5, Paradox]
der © (2002-03-12 05:09:00)Драсьте!
Как можно организовать нумерацию ячеек в dbgrid? Нужен № п/п.
MAxiMum (2002-03-15 18:08:00) [1]>Nest Ты, конечно, молодец. Ну не красиво это.
Я юзверю ведь красота нужна. Информативность вот.
Нумерация нужна, чтобы можно было определить на какой записи по номеру он находится (т.е. сколько сверху, снизу и т.д. - по крайней мере, так объяснили мне; я согласен).
Эге-ге-ге-гей! Меня-то кто-нибудь слышит!? :-(
Nest (2002-03-15 17:01:00) [2]А что насчёт Nest © (12.03.02 09:12)
Непонятно изъяснил или не устраивает вриант?
Если первое-спрашивайте что непонятно.
Вроде более менее просто/быстро...
У меня работает и вполне доволен. Тоже долго парился,искал а потом Сам придумал :)
С примером нехорошо получилось - пофиксил оказывается когда линух ставил... :(
data (2002-03-15 16:53:00) [3]2 Lusha © (15.03.02 15:52)
Да ни за чем не нужна, т.к. не несет никакой полезной информации :-). В моем случае заказчики захотели так "Для красоты".
Lusha (2002-03-15 15:52:00) [4]Извините, что встреваю в Вашу дискуссию. А не могли бы Вы мне "темному" ответить зачем вообще нужна эта нумерация, т.е. какую полезную информацию она несет пользователю?
MAxiMum (2002-03-15 15:15:00) [5]Я думаю решение, в создании новой компоненты, унаследованной от TDBGrid. При этом, нельзя полагаться на свойства TDataset. Думаю, надо на свойства TCustomGrid или перекрывать их же.
Повторяю посмотрите ветку: http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1016107005&n=1.
p.s. Или никто ООП и VCL не знает!? :))
sniknik (2002-03-15 12:50:00) [6]С вычисляемым полем тоже фигня получится (как и у меня). Вообше я понял тут RecNo нельзя использовать он дает физический номер поля. Используемый индекс их перемешает а фильтр часть отсечет. А человеку похоже надо чтобы нумерация была правильной независимо от индексов или фильтров.
asafr (2002-03-15 12:26:00) [7]Cоздаешь вычисляемое поле, два раза кликнув по Query1, обзываешь его, например, "Num", присваиваешь тип Intrger. А потом
procedure Tfm_Form1.Query1CalcFields(DataSet: TDataSet);
begin
Query1Num.Value:=Query1.RecNo;
end;
Всё...
asafr (2002-03-15 12:25:00) [8]Cоздаешь вычисляемое поле, два раза кликнув по Query1, обзываешь его, например, "Num", присваиваешь тип Intrger. А потом
procedure Tfm_Form1.Query1CalcFields(DataSet: TDataSet);
begin
Query1Num.Value:=Query.RecNo;
end;
Всё...
sniknik (2002-03-15 11:20:00) [9]не у меня sniknik@rambler.ru то что из дома посылал уже должно дойти. Кстати пример простой с индексами и фильтрами не проверял счас буду пробовать пока жду машину на выезд.
MAxiMum (2002-03-15 11:03:00) [10]>sniknik ©
Если ты mihut@chat.ru, то я не смог открыть вложенный HTML, иначе, не получил.
deleon (2002-03-15 08:53:00) [11]А теперь наложите на таблицу фильтр и посмотрите как попорядку ваш RecNo выдает значения :)
Hooch (2002-03-15 08:02:00) [12]Здравствуйте Все !
Дабы Query.RecNo выдавал не -1 а реальный номер строки нужно
после открытия сказать Query.FetchAll и будет сказка !
sniknik (2002-03-14 23:09:00) [13]Про почту. Только она у меня глючит на отправку (на работе) посылаю еще раз из дома (теперь дойдет).
MAxiMum (2002-03-14 19:46:00) [14]>sniknik ©
Не понял про, что вы говорите. Если про почту, то там чисто.
sniknik (2002-03-14 19:36:00) [15]MAxiMum © послал пример ответьте при получении.
MAxiMum (2002-03-14 18:39:00) [16]>sniknik ©
А ведь, может оказаться, что Table1.RecNo не изменился.
Я не знал и создал параллеотно вам свою ветку. Посмотри её плиз.
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1016107005&n=1
sniknik (2002-03-12 13:19:00) [17]Да нет у меня и с Парадоксом работает только одно изменение сделал
if UpperCase(Field.FieldName) = "LINKED" then begin
DBGrid1.Canvas.Font.Color := clRed;
DBGrid1.Canvas.TextOut(Rect.Left, Rect.Top, IntToStr(Table1.RecNo));
end;
т.к. у него Field.FieldName почемуто маленькини буквами. Правда у меня Delphi шестой. Но это не должно влиять.
data (2002-03-12 13:03:00) [18]2 onix © (12.03.02 11:37)
Не за что, всегда рада помочь :)
2 sniknik © (12.03.02 11:30)
RecNo не во всех СУБД работает. Для Парадокса по-моему (но могу и ошибаться) как раз все время выдает -1.
sniknik (2002-03-12 13:01:00) [19]To Shirson ©
Ничего такого, что есть в BDE, но нет в ADO
Упаковка таблиц, переиндексация (снятие индексов при потере иидексных файлов), почти все функции DBI, доступ к записи (не эмуляция через курсор, это тормозит, а прямой). Это конечно если работать с DB и DBF. Если с MSSQL то я сам бы выбрал ADO.
DiggerAbstract (2002-03-12 12:18:00) [20]
SELECT
ROW_NUMBER() OVER() AS NUM,
T.*
FROM
TABLE AS T
Может так проще будет