Определение YPos активной строки в списке
Модератор: Дед Пахом
Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
-
- Старожил
- Сообщения: 238
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 6 раз
Определение YPos активной строки в списке
Напомните мне, пожалуйста, как программно определить YPos активной строки в Browse. Надо для того, чтобы сразу же под ней вывести свое окно.
- Admin
- Администратор
- Сообщения: 4010
- Зарегистрирован: 05 Июль 2005, 15:59
- Откуда: Хабаровск
- Благодарил (а): 53 раза
- Поблагодарили: 33 раза
- Контактная информация:
Нопомните ... т.е. ты раньше знал 
Я х.з.
Думаю вот так... к примеру:
?Browse{PROP:YPos} + ((CHOOSE(?Browse) * ?Browse{PROP:LineHeight}) + HeaderSize) - ?Browse{PROP:LineHeight}/2
HeaderSize я х.з. ка узнать
И! CHOOSE(?Browse) возвращает не позицию в текущем отображении а позицию в очереди

Я х.з.
Думаю вот так... к примеру:
?Browse{PROP:YPos} + ((CHOOSE(?Browse) * ?Browse{PROP:LineHeight}) + HeaderSize) - ?Browse{PROP:LineHeight}/2
HeaderSize я х.з. ка узнать
И! CHOOSE(?Browse) возвращает не позицию в текущем отображении а позицию в очереди
Рай совершает ошибки ничуть не реже чем ад. Просто у него хорошая пресса
- Tolusha
- Активист
- Сообщения: 123
- Зарегистрирован: 11 Январь 2006, 16:50
- Откуда: Украина, г. Черкассы
- Контактная информация:
Попробуй так:
Код: Выделить всё
?List{prop:column} = 1
c# = Create(0, CREATE:REGION)
?List{prop:edit, 1} = c#
GetPosition(c#, x#, YPOS#, w#, h#)
?List{prop:edit, 1} = 0
Desroy(c#)
?List{prop:column} = 0
MyWindow{prop:ypos} = ?List{prop:ypos} + ypos#
Анатолий.
-
- Старожил
- Сообщения: 238
- Зарегистрирован: 10 Ноябрь 2005, 23:07
- Откуда: Краснодар
- Благодарил (а): 6 раз
Спасибо за направление раскопок.
Получилось более-менее похожее на задуманное:
Mod:YPos = 0{PROP:YPos} + ?Sheet1{PROP:YPos} + ?List:Zams{PROP:YPos} + ((CHOICE(?List:Zams) * ?List:Zams{PROP:LineHeight}) + 34)
где 34 – экспериментально подобранное значение высоты заголовка Browsa
Только все это будет работать с количеством записей, не превышающем максимального количества строк в Browse.
А что, нет никакой возможности определить номер активной строки в Browse?
Получилось более-менее похожее на задуманное:
Mod:YPos = 0{PROP:YPos} + ?Sheet1{PROP:YPos} + ?List:Zams{PROP:YPos} + ((CHOICE(?List:Zams) * ?List:Zams{PROP:LineHeight}) + 34)
где 34 – экспериментально подобранное значение высоты заголовка Browsa
Только все это будет работать с количеством записей, не превышающем максимального количества строк в Browse.
А что, нет никакой возможности определить номер активной строки в Browse?
- Tolusha
- Активист
- Сообщения: 123
- Зарегистрирован: 11 Январь 2006, 16:50
- Откуда: Украина, г. Черкассы
- Контактная информация:
NewUser писал(а):А что, нет никакой возможности определить номер активной строки в Browse?
Код: Выделить всё
?List{prop:selected}
Анатолий.