Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Delphi Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
 Последняя строка в ADOQuery  [new]
HobbytF
Member

Откуда:
Сообщений: 37
Подскажите, как можно проверить, является ли выделенная строка в DBGrid последней?
Понятно, что можно сравнить с ADOQuery.Last, но строки могут быть одинаковыми.
19 дек 18, 11:41    [21768133]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 24745
ADOQuery.Eof
HobbytF
ADOQuery.Last

Это процедура, а не функция. С чем сравнивать?
19 дек 18, 11:55    [21768157]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
krapotkin
Member

Откуда: Екатеринбург
Сообщений: 647
точное знание придет если попробовать сделать Next
если после этого пришел EOF то строка последняя
19 дек 18, 14:39    [21768397]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
HobbytF
Member

Откуда:
Сообщений: 37
wadman
ADOQuery.Eof
HobbytF
ADOQuery.Last

Это процедура, а не функция. С чем сравнивать?


Я знаю, что фукнция. Имею в виду этой функцией получить данные последней записи в ADOQuery и сравнить с данными выбранной строки DBGrid.
19 дек 18, 15:31    [21768474]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
HobbytF
Member

Откуда:
Сообщений: 37
krapotkin,

Ну да, спасибо. Все равно немного костылем попахивает.
19 дек 18, 15:33    [21768477]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 29392

а цель какая?

Posted via ActualForum NNTP Server 1.5

19 дек 18, 15:35    [21768481]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
HobbytF
Member

Откуда:
Сообщений: 37
Мимопроходящий,

Рядом с гридом есть кнопки вверх и вниз.
Если выделена последняя строка в гриде, то кнопка вниз должна стать неактивной. Аналогично для первой строки.
19 дек 18, 16:16    [21768546]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Gerasimenko
Member

Откуда:
Сообщений: 4435
HobbytF
Мимопроходящий,

Рядом с гридом есть кнопки вверх и вниз.
Если выделена последняя строка в гриде, то кнопка вниз должна стать неактивной. Аналогично для первой строки.

Пришла пора возродить топик: https://www.sql.ru/forum/785008/topik-dlya-pohvaleniya-kritiki-interfeysov?hl=?????????
ТС: возглавь реанимацию, покажи личико....
19 дек 18, 16:25    [21768559]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
HobbytF
Member

Откуда:
Сообщений: 37
Gerasimenko
HobbytF
Мимопроходящий,

Рядом с гридом есть кнопки вверх и вниз.
Если выделена последняя строка в гриде, то кнопка вниз должна стать неактивной. Аналогично для первой строки.

Пришла пора возродить топик: https://www.sql.ru/forum/785008/topik-dlya-pohvaleniya-kritiki-interfeysov?hl=?????????
ТС: возглавь реанимацию, покажи личико....


О, а вот и папки подъехали. А я думал вымерли такие, кто бесполезными ссылками кидается, а-ля "чЕтай доку".
Спасибо, в ваших советах не нуждаюсь.
19 дек 18, 16:53    [21768609]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
DarkMaster
Member

Откуда: Donetsk,Ukraine
Сообщений: 6136
HobbytF,

Э... Ну посмотри как работает DBNavigator, если тебе так уж приспичило кнопки делать.
19 дек 18, 17:25    [21768649]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Gerasimenko
Member

Откуда:
Сообщений: 4435
HobbytF
Gerasimenko
пропущено...

Пришла пора возродить топик: https://www.sql.ru/forum/785008/topik-dlya-pohvaleniya-kritiki-interfeysov?hl=?????????
ТС: возглавь реанимацию, покажи личико....


О, а вот и папки подъехали. А я думал вымерли такие, кто бесполезными ссылками кидается, а-ля "чЕтай доку".
Спасибо, в ваших советах не нуждаюсь.

А я тебе и не советую. Я тебя умоляю: покажи интерфейс. Может именно его многим не хватает для работы с БД...
19 дек 18, 17:49    [21768683]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Док
Member

Откуда: Казань
Сообщений: 5906
HobbytF
Если выделена последняя строка в гриде, то кнопка вниз должна стать неактивной. Аналогично для первой строки.

Ну так, правильно тебе говорят - чти доку

кнопка_вверх.Enabled:= not Мой_Датасет.BOF;
кнопка_вниз.Enabled:= not Мой_Датасет.EOF;
19 дек 18, 18:39    [21768745]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
alexl06
Member

Откуда:
Сообщений: 26
А я вот не понял из вопроса: последняя видимая в DBGrid или последняя в ADOQuery?
20 дек 18, 11:09    [21769257]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 24745
alexl06
А я вот не понял из вопроса: последняя видимая в DBGrid или последняя в ADOQuery?

Достаточно найти ответ на вопрос: зачем ограничивать движение по гриду только в пределах видимых записей?
20 дек 18, 12:10    [21769334]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Мимопроходящий
Member

Откуда: бурятский тундрюк, эсквайр
Сообщений: 29392

20.12.2018 12:10, wadman пишет:
> Достаточно найти ответ на вопрос: зачем ограничивать движение по гриду только в пределах видимых записей?

да мало ли в бразилии донов Пэдро!
и не сосчитаешь!
(С)

Posted via ActualForum NNTP Server 1.5

20 дек 18, 12:17    [21769340]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
alexl06
Member

Откуда:
Сообщений: 26
Просто вопрос был поставлен так:
Подскажите, как можно проверить, является ли выделенная строка в DBGrid последней?
20 дек 18, 12:47    [21769387]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
wadman
Member

Откуда: Санкт-Петербург
Сообщений: 24745
alexl06
Подскажите, как можно проверить, является ли выделенная строка в DBGrid последней?

С точки зрения русского языка акцент может быть смещен либо на выделенную строку, либо на грид.
Либо строка, выделенная в гриде, либо строка последняя в гриде.

ЗЫ. Тут у многих шары есть. Хрустальные.
20 дек 18, 12:55    [21769408]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Док
Member

Откуда: Казань
Сообщений: 5906
alexl06
последняя видимая в DBGrid или последняя в ADOQuery?

ты просто невнимательно читаешь стартовый пост, ибо
HobbytF
можно сравнить с ADOQuery.Last

вероятнее всего, подразумевает набор данных, а не видимую на экране часть грида:)
20 дек 18, 16:55    [21769847]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Beltar
Member

Откуда:
Сообщений: 165
А сравнить у запроса, с которого грид данные отображает, RecNo и RecordCount?
И вообще, зачем что-то брать у грида.
24 дек 18, 09:37    [21771766]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 10689
Beltar
А сравнить у запроса, с которого грид данные отображает, RecNo и RecordCount?
С какой целью? Просто ради интереса?
26 дек 18, 16:14    [21773981]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Beltar
Member

Откуда:
Сообщений: 165
С целью того, что именно датасет, а не грид отвечает за данные.
Ваш Кэп.
27 дек 18, 08:57    [21774491]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 10689
Beltar
С целью того, что именно датасет, а не грид отвечает за данные.
Это замечательно. А чего вы собираетесь добиться сравнивая RecNo и RecordCount?
27 дек 18, 15:39    [21774902]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Beltar
Member

Откуда:
Сообщений: 165
Узнать, является ли строка на которой стоит курсор последней.
Ваш Кэп.
27 дек 18, 16:34    [21774974]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 10689
Beltar
Узнать, является ли строка на которой стоит курсор последней.
Понятно. Не хочу вас огорчать, но оно вот так
http://docwiki.embarcadero.com/Libraries/Tokyo/en/Data.DB.TDataSet.RecordCount
As implemented in TDataSet, RecordCount is always -1. Ordinarily an application does not access RecordCount at the TDataSet level. Instead a redeclared and implemented RecordCount property in a descendant class is accessed. RecordCount provides a fallback property for derived dataset classes that do not reimplement the property access method.

RecordCount is inherited by some Query-type datasets, like TIBQuery. For Query-type datasets, the RecordCount contains the total number of records that have currently been fetched. To get RecordCount to report the total number of records in a Query-type dataset, call the Last method first.
27 дек 18, 17:07    [21775015]     Ответить | Цитировать Сообщить модератору
 Re: Последняя строка в ADOQuery  [new]
Beltar
Member

Откуда:
Сообщений: 165
Мне абсолютно фиолетово, что там в TDataSet, возможно, это вообще абстрактный класс, работают всегда в конкретным наследником. Я не знаю, может там какой-то очень общий код на уровне именно TDataSet, но операторов is и as тоже никто не отменял.

Было бы прикольнее про подгрузки по требованию, когда RecordCount нерелевантен, но тогда неясно, что вообще считать концом набора данных.
28 дек 18, 09:18    [21775435]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2   вперед  Ctrl      все
Все форумы / Delphi Ответить