:: Visual Foxpro, Foxpro for DOS
Про тулбар Report-a и о самом Report-е
Syberex
Автор

Сообщений: 1432
Откуда: Кострома
Дата регистрации: 19.01.2004
Сейчас в VFP6 такая проблема:
главное окно в проге на основе класса формы, окно для просмотра отчетов
определено через DEFINE, делаю
REPORT FORM ... PREVIEW WINDOW Wind_preview
Выводится и показывается все нормально, а проблема в тулбаре:
он появляется все время в одном и том же месте, а хочется его придокить к верху

В 9-ке резултат как ни странно тотже... Как же упралять этим PreviewToolbar-ом




------------------
Ratings: 0 negative/0 positive
Re: Про тулбар Report-a и о самом Report-е
po2

Сообщений: 2864
Откуда: Иркутск
Дата регистрации: 22.12.2001
Возможно, что релиз 9-ки будет поддерживать команду Dock Window и в Runtime. Для младших версий можно использовать часто упоминаемый способ пристыковки панели инструментов с помощью эмуляции двойного щелка.
if wexi('Предварительный просмотр')
if wlro('Предварительный просмотр')<0.or.;
wlco('Предварительный просмотр')<0
move wind 'Предварительный просмотр' to 2,2
endi
if wbor('Предварительный просмотр')
priv nX,nY
nX = mrow(wont())
nY = mcol(wont())
mous at -1, 1 wind 'Предварительный просмотр'
doev
mous dblclick wind 'Предварительный просмотр'
mous at nX,nY
endi
doev
if wbor('Предварительный просмотр')
move wind 'Предварительный просмотр' to 2,2
nX = mrow(wont())
nY = mcol(wont())
mous dblclick at -1, 1 wind 'Предварительный просмотр'
mous at nX,nY
endi
endi
Вызов функции с таким кодом нужно поместить в событие OnEntry любой из полос отчета. Если используется не русский Runtime, то имя окна [Предварительный просмотр] следует заменить на его эквивалент.

Построено на использовании штатной функции WBORDER([WindowName]), которая позволяет узнать есть ли у окна бордюр. Соответственно у свободной панели он есть, а у пристыкованной нет. Двойная обработка нужна для случаев когда пользователь умудрился затащить панель более чем на половину ее ширины за край окна, но она осталась непристыкованной.
Строки DOEVENT нужны для гарантированного позиционирования указателя мыши.
Ratings: 0 negative/0 positive


Извините, только зарегистрированные пользователи могут оставлять сообщения в этом форуме.

On-line: 19 (Гостей: 19)

© 2000-2024 Fox Club 
Яндекс.Метрика