powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / grid проблема с текущей активной ячейкой
13 сообщений из 13, страница 1 из 1
grid проблема с текущей активной ячейкой
    #33335991
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!
Задача: получить значение, содержащееся в первом столбце текущей строки grid-а при нажатии на любой столбец и любую строку. При recordsourcetype = alias все работает замечательно, при = query - не хочет.

в activatecell пишу текст grd1 = thisform.grdRepairhistory.column1.text1.Value. пробовал обращаться и по имени таблицы.поля в БД - тоже не работает (при alias работает). не понимаю, в чем проблема.

Спасибо.
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33336450
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробовал вставить в курсор, тоже не работает. обращаюсь через curlog.rid. Ничего не понимаю...
Visual Foxpro 9.
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33336788
5631
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Брать значения из Grid вообще тяжело.Можно , только если фокус в ячейке. Лучше обращаться к полю таблицы. Включи отладчик и посмотри ,
на какой записи у тебя в таблице курсор.
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33338256
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Позиция самая последняя. Причем в самой таблице, а не в выборке. Фокус в ячейке, т.к. срабатывать должен по клику по ней. Еще раз повторюсь, с таблицей все работает. А с курсорами/запросами не хочет почему-то, хотя пробовал уже и по имени таблицы, и по имени запроса обращаться...
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33338330
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, я ошибся, значение всегда возвращается самой первой строки запроса.
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33341332
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Выяснил, что не срабатывает ActivateCell. Почему?!
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33341347
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
причем не срабатывает на значениях recordsourcetype, отличных от alias. ставлю алиас - все работает.
Но мне нужна более сложная выборка...
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33341786
5631
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Объясни подробно, что ты хочешь сделать.
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33345500
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть query:
SELECT Repairhistory.repairid, Repairhistory.job_progress,;
Repairhistory.dateofrepair, Employees.fullname, Clients.fullname,;
Repairhistory.costofrepair, Repairhistory.notes;
FROM ;
data1!employees ;
INNER JOIN data1!repairhistory ;
ON Employees.employeeid = Repairhistory.employeeid ;
INNER JOIN data1!clients ;
ON Repairhistory.clientid = Clients.customerid;
ORDER BY Repairhistory.repairid;
INTO CURSOR curLog NOFILTER

В свойствах грида прописано recordsouce = имя этого query, recordsourcetype = query. Мне необходимо получать при клике по какому-либо ряду в grid-е текущий Repairhistory.repairid. На событие ActivateCell (setfocus, click тоже пробовал) у меня прописано создание глобальной переменной, содержащей значение текущей активной записи:

PUBLIC grd2
grd2 = repairhistory.repairid

Но это событие не срабатывает. Если я ставлю просто таблицу repairhistory в качестве источника, все нормально.
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33345821
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну, так в данном случае в качестве источника выступает курсор curLog. Это указано в опции

INTO CURSOR curLog NOFILTER

Вот соответсвтующее поле этого курсора и надо читать:

PUBLIC grd2
grd2 = curLog.repairid
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33346218
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Не работает так, я пробовал.
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33346222
100gram
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нет, Вы правы. Действительно, работает. Видимо, я запутался в коде. Огромное спасибо!
...
Рейтинг: 0 / 0
grid проблема с текущей активной ячейкой
    #33346421
Igor Korolyov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Hi 100gram!

ActivateCell это метод а не "событие" (кстати правильнее говорить обработчик
события) - и соответственно он никогда не вызывается сам по себе - только из
какого-то другого кода, например из AfterRowColChange или ещё какого-то
обработчика события...

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / grid проблема с текущей активной ячейкой
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]