Форум: "Базы";
Текущий архив: 2002.11.14;
Скачать: [xml.tar.bz2];
ВнизКоличество строк в DBGrid Найти похожие ветки
← →
Alex Freeman (2002-10-25 14:31) [0]Как можно узнать, сколько строк выведено в данный момент в DBGrid? Если можно, с примером!
← →
stone (2002-10-25 14:35) [1]DBGrid служит для работы с датасетом. Поэтому количество строк в гриде равно количеству строк в датасете т.е.
Table1.RecordCount
← →
Johnmen (2002-10-25 14:55) [2]>stone © (25.10.02 14:35)
Повнимательней... >сколько строк выведено в данный момен...
>Alex Freeman
Был такой вопрос...Вот только ответ сходу не приведу....
← →
stone (2002-10-25 15:00) [3]> Johnmen ©
что значит в данный момент?
Датасет содержит фильтры? или есть другие условия?
← →
Anatoly Podgoretsky (2002-10-25 15:02) [4]Как минимум RecordCount содержит уже количество отффеченных срок к данному моменту, а может здесь вообще имеется ввиду количество видимых строк в dbGrid, а может еще что
← →
Johnmen (2002-10-25 15:24) [5]Я понимаю вопрос, как количество видимых строк в dbGrid.
А как автор ?
← →
MsGuns (2002-10-25 15:30) [6]>Johnmen © (25.10.02 15:24)
Я понял так же. И мне также интересно узнать решение этой проблемы. Пока я знал только про один метод - через канву, но он довольно муторный и мне не нравится.
← →
Darts (2002-10-25 15:34) [7]Наверное, приблизительно так, если число записей > числа видимых строк
VisibleRows := DBGrid1.Height div Row.Height,
где Row.Height - высота строки грида.
← →
Johnmen (2002-10-25 15:40) [8]>MsGuns © (25.10.02 15:30)
Неск.месяцев назад был очень понравившийся мне ответ.
Если вспомню (надо поковыряться в исходниках), то скажу.
:)))))))))0
← →
Delirium (2002-10-25 15:42) [9]
DBGrid1.SelectedRows.Count
← →
Darts (2002-10-25 15:57) [10]> Delirium
Не работает.
← →
MsGuns (2002-10-25 16:03) [11]>Darts (25.10.02 15:57)
Почему же ? Прекрасно работает ! Просто для этого юзеру надо выделить (аккуратно, чтоб не съехал ползун) ВСЕ видимые строки и нажать кнопку, которую надо положить на форму и заодно написать к ней обработчик 8)
← →
Darts (2002-10-25 16:23) [12]> MsGuns
Оригинальный метод. Юзер должен попотеть, выполняя такую работу. Он может просто подсчитать вслух про себя строки. ;-)
Если не ошмбаюсь, высота строки - protected? Тогда проще наследовать данный грид.
← →
Darts (2002-10-25 16:26) [13]Да, и надо выкинуть высоту шапки, высоту горизонтального скроллбара, чтобы придти к цели. Как-то все слишком сложно.
А можно ли подобраться, используя высоту фонта грида + поправку на пару пикселов по высоте?
← →
Johnmen (2002-10-25 16:47) [14]TMyGrid = class(TDBGrid);
....
Количество видимых строк в DBGrid :
TMyGrid(DBGrid1).RowCount-1;
← →
vic_vm (2002-10-26 14:17) [15]Вот куски из моего собственного компонента
type
TExtDBGrid = class(TDBGrid)
protected
function GetGrid_Info : TGridDrawInfo;
public
constructor Create(AOwner: TComponent); override;
property Grid_Info : TGridDrawInfo read GetGrid_Info;
end;
.............................
implementation
constructor TExtDBGrid.Create(AOwner: TComponent);
begin
inherited;
end;
function TExtDBGrid.GetGrid_Info : TGridDrawInfo;
begin
CalcDrawInfo(Result);
end;
И вот что ты можешь получить
ExtDBGrid1: TExtDBGrid;
.............
ExtDBGrid1.Grid_Info.Vert.LastFullVisibleCell;
ExtDBGrid1.Grid_Info.Vert.GridCellCount;
и еще некоторые вкусности.
CalcDrawInfo - стандартная процедура Delphi
находящееся в protected какого-то из предков
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.11.14;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c