powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Номера строк
20 сообщений из 20, страница 1 из 1
Номера строк
    #36469650
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как получить номера 2-х строк, не идущих подряд в таблице? Тоесть, например щелкнут на первую сроку в гриде - получить ее номер, щелкнуть на какую-то другую - получить ее номер. И номера сохранить.
...
Рейтинг: 0 / 0
Номера строк
    #36469700
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: НадеждаМ
> Как получить номера 2-х строк, не идущих подряд в таблице? Тоесть, например щелкнут на первую сроку в гриде -
> получить ее номер, щелкнуть на какую-то другую - получить ее номер. И номера сохранить.

Почитай справку по функции RecNo()

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Номера строк
    #36469719
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос,

я знаю сто recno() возвращает номер активной строки. Когда щелкаем на одну строку, а потом на другую, ведь получается recno() последней строки. А как мне сохранить и предыдущую?
...
Рейтинг: 0 / 0
Номера строк
    #36469767
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: НадеждаМ
> А как мне сохранить и предыдущую?

Например в событии AfterRolColChange написать так:
Код: plaintext
1.
2.
3.
4.
5.
6.
If Used(This.RecordSource) Then
    If Val(This.Tag) <> RecNo(This.RecordSource) Then
        m_oldRecNo = Val(This.Tag)
        m_curRecNo = RecNo(This.RecordSource)
        This.Tag = RecNo(This.RecordSource)
    End If
End If


Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Номера строк
    #36469788
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Игорь Горбонос,

что такое tag?
...
Рейтинг: 0 / 0
Номера строк
    #36469807
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тоесть свойство tag хранит информцию символьного типа. получается, что мне строку recno(this.recordsource) надо преобразовать в симвоьлный тип....
...
Рейтинг: 0 / 0
Номера строк
    #36472720
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не совсем понятно что такое Val(This.Tag)?
...
Рейтинг: 0 / 0
Номера строк
    #36473069
Фотография Игорь Горбонос
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: НадеждаМ
> не совсем понятно что такое Val(This.Tag)?

А справка к среде есть? встать курсором на Val и нажать F1

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
Номера строк
    #36473705
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
нет справки.

не понятно что такое tag, а не val.
...
Рейтинг: 0 / 0
Номера строк
    #36473730
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМ,

Тоесть не понятно зачем это свойство нужно. Нашла про него инфу в нете, но чего-то не пойму.
...
Рейтинг: 0 / 0
Номера строк
    #36473751
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМТоесть не понятно зачем это свойство нужно. Нашла про него инфу в нете, но чего-то не пойму.
А и понимать нечего - это просто резервное свободное свойство для заполнения его чем угодно. Хотите, туда можете число закинуть, чтобы потом где-нибудь в коде извлечь, хотите - произвольную строку. Запасной "бардачок" :)
...
Рейтинг: 0 / 0
Номера строк
    #36473763
Dag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМнет справки
Справка - есть
НадеждаМне понятно что такое tag, а не val.
tag - свойство объектов VFP, куда можно записывать всякий вспомогательный мусор. Нечто вроде "болвана в старом польском преферансе"(c)
...
Рейтинг: 0 / 0
Номера строк
    #36474012
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dag,

Спасибо за помощь. Справку обязательно скачаю, только вот fox у меня 6.0.
...
Рейтинг: 0 / 0
Номера строк
    #36487525
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Снова привет всем.
Пытаюсь выделить диапазон записей галочками, но ничего не выходит, тоесть галочки проставляются но не с указанной строки до конечной, а начиная с 0.

Сделала как сказал Игорь Горбонос в AfterRowColchange прописала:

If Val(this.Tag) <> RecNo('getspprice') Then
m_oldRecNo = Val(this.Tag)
m_curRecNo = RecNo('getspprice')
this.Tag = str(RecNo('getspprice'))
endif

Далее в цикле прохожу по найденным границам диапазона и проставляю галочки.

for i=m_oldRecNo to m_curRecNo
this.parent.grid3.activatecell(i,1)
if getspprice.ch=.f.
repla getspprice.ch with .t.
endif

endfor

Val(this.Tag) = ' ', поэтому m_oldRecno = 0. Как мне начать не с 0-ой строки?
...
Рейтинг: 0 / 0
Номера строк
    #36487535
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И еще не правильно работает данный код когда я прокручиваю грид.
Либо ошибку пишет, либо выделяет, но неправильно. Как сделать чтобы с прокруткой в гриде все работал? Так как иногда в таблице записи не помещаются на форму и уходят за пределы грида, то приходится прокручивать.
...
Рейтинг: 0 / 0
Номера строк
    #36487636
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМИ еще не правильно работает данный код когда я прокручиваю грид.
Либо ошибку пишет, либо выделяет, но неправильно.
Таблица индексирована ?
...
Рейтинг: 0 / 0
Номера строк
    #36487690
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
reware,

Да
...
Рейтинг: 0 / 0
Номера строк
    #36488168
reware
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
НадеждаМ,

Так с этого и начинали бы мольбы о помощи. При включенном индексе записи располагаются не в порядке нарастания RECNO(), а в соответствии с индексным выражением. Т.е. не 1,2,3,4..., а 5,1,101,43,6,23... И во-вторых - зачем привязываться к строке грида, когда в таблице даже есть специальное поле для метки getspprice.ch ? Вот и привязывайтесь к источнику данных, а не к строкам грида. Например :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
GO m_oldRecNo IN getspprice
DO WHILE RECNO("getspprice") <> m_curRecNo
   IF !getspprice.ch
      REPLACE ch with .T. IN getspprice
   ENDIF
   SKIP IN getspprice
ENDDO
this.parent.grid3.refresh
...
Рейтинг: 0 / 0
Номера строк
    #36488751
Местами администратор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня так:
text1.valid
***мультиселект определение страртовой записи***
thisform.nStartMultiSelect=RECNO(this.Parent.Parent.RecordSource)
******************************************

text1.KeyPress
LPARAMETERS nKeyCode, nShiftAltCtrl
DO CASE
*** левая кнопка мыши+CTRL или пробел***
case nKeyCode=0 AND nShiftAltCtrl=2 OR nKeyCode=32
SELECT (this.Parent.Parent.RecordSource)
REPLACE multi_sel WITH IIF(multi_sel=.T.,.F.,.T.)
this.Parent.Parent.Refresh()
RETURN
****************************************
*** левая кнопка мыши+Shift***
case nKeyCode=0 AND nShiftAltCtrl=1
LOCAL nStartDiap, nEndDiap, nRecEndSelect
nEndDiap=this.Parent.Parent.ActiveRow
SELECT (this.Parent.Parent.RecordSource)
nRecEndSelect=RECNO()
IF (thisform.nStartMultiSelect)>0
GO RECORD (thisform.nStartMultiSelect)
ELSE
IF !BOF((this.Parent.Parent.RecordSource))
GO TOP
ENDIF
ENDIF
nStartDiap=this.Parent.Parent.ActiveRow
FOR i=1 TO ABS(nStartDiap-nEndDiap)+1
REPLACE multi_sel WITH IIF(multi_sel=.T.,.F.,.T.)
IF nStartDiap-nEndDiap>0
IF !EOF((this.Parent.Parent.RecordSource))
SKIP
ENDIF
ELSE
IF !BOF((this.Parent.Parent.RecordSource))
SKIP -1
ENDIF
ENDIF
ENDFOR
GO RECORD nRecEndSelect
this.Parent.Parent.Refresh
****************************************
ENDCASE

text1.MouseDown

LPARAMETERS nButton, nShift, nXCoord, nYCoord
***мультиселект левая кнопка мыши+Shift***
IF nButton=1
this.KeyPress(0,nShift)
ENDIF
******************************************
multi_sel логическое поле в курсоре
text1-CurrentControl во всех Column Grid-а

Немного переделал, что бы было понятнее, у меня эта фигня в классе, все ссылки на Grid, ну а Вам необходимо будет добавить несколько свойств для формы.
Проверьте как работает, может что-то и пропустил
...
Рейтинг: 0 / 0
Номера строк
    #36489271
НадеждаМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем за советы. Все получилось!
...
Рейтинг: 0 / 0
20 сообщений из 20, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Номера строк
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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