|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
24.11.2013, 14:50 | #1 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
Проверить выделена ли запись, на которой стоит курсор
Добрый день, у меня такой вопрос.
Есть грид подключён к мемтейблу, по нажатию кнопки я просматриваю мемтейбл и смотрю если поле равно 101 то я произвожу какието действия, но пользователь может ещё дополнительно выделить галками строки и при этом нужно проверять, текущая позиция равно 101 или строка выделена галкой (DBGridEh) как правильно сделать? Код:
я прохожу по таблице и вторым условием делаю (gSms.SelectedRows.CurrentRowSelect ed), но оно постояно труе) это помтоу что я и так стою на даной строки на даный момент а мне надо узнать выделена ли она галкой... |
25.11.2013, 09:27 | #2 |
Форумчанин
Регистрация: 05.07.2010
Сообщений: 136
|
В редакторе после gSms.SelectedRows.CurrentRowSelect поставь точку и выпадающем окне поищи что-то типа Checked
|
25.11.2013, 09:47 | #3 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
извините, если я "мимо кассы".
у нас в рабочем проекте выделенные строки перебираются примерно таким кодом: Код:
Если мой код не поможет — я не виноват, я пытался помочь! |
25.11.2013, 23:09 | #4 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
Мой ход мыслей такой, но знаний не хватает, если можно направте...
Код:
|
26.11.2013, 00:55 | #5 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
Код:
Код:
|
26.11.2013, 08:51 | #6 |
Старожил
Регистрация: 09.01.2008
Сообщений: 26,229
|
во-первых, мне очень не нравится ваш цикл в цикле.
я бы переписал алгоритм В КОРНЕ! На крайний случай, ключевое значение поля для выделенных записей грузил куда-нибудь в структуру (да хоть массив или TList) и потом выбирал те поля, где нужный признак (=101) и/или ID есть в нашем списке выделенных строк. во-вторых, вы сравниваете букмарки в разных датасетах (mtSms и gSms) и удивляетесь, что они не равны друг другу?! А почему они должны быть равны?! в-третьих, боюсь, что без отладки тут делать нечего. Может быть, Вы можете сделать небольшой ТЕСТОВЫЙ проект? в-четвёртых, меня терзаю смутные сомнения. выложенный мною пример работает с выделенными строчками в гриде (см. скриншот). grid_selected.jpg а вы пишете об "выделить галками строки". Это что за "галки" ? уж не идёт ли речь о каком-то дополнительном поле?! |
26.11.2013, 17:08 | #7 |
Форумчанин
Регистрация: 21.05.2008
Сообщений: 495
|
Да я тоже об этом задумался, и прищёл к выводу что всётаки букмарки из грида и датасета будут разными)
Чекбоксы от грида |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Литература, с которой стоит начать знакомство с программированием. | Krivoshter | Обсуждение статей | 7 | 18.02.2013 23:46 |
Проверить выделена ли память под объект | Sibedir | Общие вопросы Delphi | 58 | 21.03.2011 11:48 |
Вставка записи, перед которой стоит ноль | artemavd | БД в Delphi | 3 | 28.06.2010 06:54 |
Подсветить или покрасить строку в dbgrid, над которой находится курсор | Artik | БД в Delphi | 4 | 12.06.2009 20:43 |
Как определить индекс линии Memo, где стоит курсор? | yaver | Общие вопросы Delphi | 2 | 16.11.2008 17:29 |