Browse в 7.0 (инициализация)
Clarion, Clarion 7
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Browse в 7.0 (инициализация)
Доброго времени суток, подскажите пожалуйста как при инициализации броуза первоначально строку - курсор переместить на последнюю запись (вместо первой по умолчанию).
gar130463
- Дед Пахом
- Старичок
- Сообщения: 3301
- Зарегистрирован: 07 Июль 2005, 16:51
- Откуда: Москва, Россия
- Благодарил (а): 15 раз
- Поблагодарили: 51 раз
- Контактная информация:
Дед Пахом
Re: Browse в 7.0 (инициализация)
У меня много параллельных броузов и такой подход не совсем катит, я решил пробл по другомуДед Пахом писал(а):программно нажать Ctrl-End
1) способ
========
Свойства броуза - эмбеды - Открыть окно - вставляем нижеслед код в самый конец
set (INP:by_RegYear_RegNo); выбор ключа
previous(inpdoc); встать на конец (засосать в буфер последнююзапись)
!
brw1.ResetFromFile; ! этот метод вроде не обязательно вызывать (читай про методы в русском хелпе с FTP)
brw1.ResetFromBuffer; ! этот надо обязательно
brw1.ResetFromView; ! с этим еще не разобрался
но в целом все пашет на 5++++
2) способ
========
StartAtCurrent BYTE
Свойство StartAtCurrent указывает объекту способ исходного позиционирования - на первый элемент данных в порядке сортировки или на элемент данных, определенного содержимым буфера VIEW. Нулевое значение (0 или False) позиционирует на первый элемент данных; единичное значение (1 или True) позиционирует на элемент данных, определенный содержимым буфера VIEW.
Реализация:
Метод SetSort устанавливает начальную позицию в соответствии со значением свойства StartAtCurrent. Метод SetSort позиционирует список, на основании на содержимого полей активного порядка сортировки, включая свободные элементы ключа.
Пример:
BRW1.StartAtCurrent = True
ST:StateCode = 'K' !установить значение компонента ключа
BrowseSt.Init(?StList,StateQ.ViewPosition,StView,StateQ,Relate:State,SELF)
=======================
ЗЫ - 2 способ не пашет с составным праймери ключем, с простым(одинарным) пашет
ВОТ ТАКИЕ ПИРОГИ
ЮЗАЙТЕ, Я НЕ ЖАДЕН

gar130463
Igor
Re: Browse в 7.0 (инициализация)
Я пользуюсь такой последовательностью для обновления списка и установки курсора в начало...
BRW1.Reset() !View в начало
BRW1.ResetQueue(RESET:Done) !Заполнить очередь
BRW1.UpdateWindow() !Отобразить
Select(?List)
Или для установки на нужную запись.
dog:cod1 = cod1 !Задать ключевое поле
BRW1.TakeAcceptedLocator() !вызов метода TakeAccepted локатора
BRW1.Reset(1) !если требуется поиск, переустановить VIEW
BRW1.ResetQueue(Reset:Done) !перенабрать очередь просмотра
BRW1.UpdateWindow()
BRW1.Reset() !View в начало
BRW1.ResetQueue(RESET:Done) !Заполнить очередь
BRW1.UpdateWindow() !Отобразить
Select(?List)
Или для установки на нужную запись.
dog:cod1 = cod1 !Задать ключевое поле
BRW1.TakeAcceptedLocator() !вызов метода TakeAccepted локатора
BRW1.Reset(1) !если требуется поиск, переустановить VIEW
BRW1.ResetQueue(Reset:Done) !перенабрать очередь просмотра
BRW1.UpdateWindow()
nik190994
-
- ✯ Ветеран ✯
- Сообщения: 5181
- Зарегистрирован: 28 Май 2009, 15:54
- Откуда: Москва
- Благодарил (а): 11 раз
- Поблагодарили: 26 раз
Re: Browse в 7.0 (инициализация)
Вариант Igor'я - прост и красив. Кстати, не всегда по умолчанию курсор устанавливается на первую строку. У меня много броувсов, где по умолчанию курсор в последней строке. Может есть какая-то система в этом. Никто не знает?
We are hard at work… for you. 

kreator
Re: Browse в 7.0 (инициализация)
Хм, думал про это, но есть вопрос, откуда посылать это событие, у меня несколько броузов и каждый в своей среде. Выходит надо посылать изнутри броуза самому же этому броузу (ведь в твоем событии нет адресации конкретному процессу(потоку, среде)). Ну например из того же места в броузе (Open Window) куда я свой код вставляю (см мое верхнее сообщение) . Несколько кудряво ведь, не находишь? Вставка вышеупомянутого кода мне как то понятнее. Хотя твой вариант видимо вполне реален и рабоч, надо пробовать. Вообще пишите плиз все, пишите, ценный у нас тут обмен происходит и совершенно бесплатно, ну где еще в наше время можно надыбать инфу. Всем спасибо!Igor писал(а):А попробуй post(EVENT:ScrollBottom,?LIST)
gar130463
Вернуться в «CLARION for Windows»
Перейти
- CW
- ↳ CLARION for Windows
- ↳ CLARION for Internet
- ↳ Clarion.NET
- Эксклюзив
- ↳ Приват
- CLARION и...
- ↳ Reports
- ↳ Железо
- ↳ Готовые программы, шаблоны, библиотеки...
- ↳ cJSON
- ↳ LibCurl
- ↳ MAV
- ↳ SQL, Oracle, ...
- ↳ Multi-программирование(Pascal/Delphi, и т.д.)
- ↳ WinDev
- DOS
- ↳ CLARION for DOS
- Разное
- ↳ Новости
- ↳ English
- ↳ Ресурсы
- ↳ Работа
- ↳ Обо всем ...
- ↳ Обсуждение этого Форума (типа, Гостевая книга)