Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PowerBuilder Новый топик    Ответить
 tooltip  [new]
sboyko
Member

Откуда:
Сообщений: 528
добрый всем день!
есть ПБ105+WIN7-64

пытаюсь сделать тултип для ДВ. все работает, НО
если ДВ типа фриформ, то при наличии скролла тултип исчезает как класс. то есть верхняя часть фриформы работает с тултипом если с помощью скрола поднять нижнюю часть - то в ней тултипа нет(не показывает сообщение).
в качестве основы взят файл с тултипом
может кто знает где здесь грабли...
ПЦ.если Филипп посмотрит - то не надо ругаться что не взял его объект - уже нет этого объекта по его ссылке! а хотелось бы :-)

К сообщению приложен файл (bbb.rar - 28Kb) cкачать
2 мар 16, 14:25    [18887721]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
AIS
Member

Откуда:
Сообщений: 1695
Возможно, что координаты тултипа нужно корректировать на величину сдвига скрола.
2 мар 16, 23:30    [18889906]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
AIS
Member

Откуда:
Сообщений: 1695
sboyko,
в прикрепленном файле примера добавил:
/* inst. var. */
Long il_scrolpos

/* в событии ScrollVertical */
il_scrolpos = scrollpos

/* в событие dwmousemove */
li_Y = UnitsToPixels( Integer( dwo.Y ), YUnitsToPixels! ) - UnitsToPixels( Integer( il_scrolpos ), YUnitsToPixels! )

при вертикальном скроле заработало.
горизонталь по идее делается аналогично.

ПС. тестил на PB10.5 Win7 (64)
3 мар 16, 00:17    [18890004]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
sboyko
Member

Откуда:
Сообщений: 528
AIS,
спасибо!
не знал что в mousemove - относительные координаты.
4 мар 16, 22:43    [18899093]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
sboyko
Member

Откуда:
Сообщений: 528
AIS,

учет скролла понятен.
но у меня в примере есть DW GRID & DW FREE FORM. сколько в GRID не меняй скролл - его НЕ НАДО учитывать - все нормально и по вертикали и по горизонтали-везде tooltip виден и он правильный. это меня и путало. а в FREE FORM - скролл НАДО учитывать! как то непоследовательно...
Есть на это какой нибудь ответ?
правда если посмотреть пример, которым я пользуюсь, то видно что DW GRID не использует координаты вообще - как то все само работает.
li_Id = Integer( this.Describe( is_ColNameTabular + ".id" ) )
ls_Text = String( This.Object.Data[row, li_Id] )
inv_Tooltip.of_SetTipText( This, ii_DwTabular, ls_Text )

а в FREE FORM в явном виде используются координаты...
inv_tooltip_form.of_UpdatetipRect( This, ii_Dwform, &
li_X, &
li_Y, &
li_X + UnitsToPixels( Integer( dwo.Width ), XUnitsToPixels! )*2, &
li_Y + UnitsToPixels( Integer( dwo.Height ), YUnitsToPixels! )*2 )

is_ColNameform = String( dwo.Name )
ls_Text = This.Describe( is_ColNameform + "_t.text" )
inv_tooltip_form.of_SetTipText( This, ii_Dwform, "Enter your " + ls_Text )
.Тогда неясно как вообще DW GRID работает!
5 мар 16, 11:38    [18899995]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
AIS
Member

Откуда:
Сообщений: 1695
sboyko,
в DW GRID привязка тултипа идет, если не ошибаюсь, к координатам ячейки таблицы, поэтому скрол не влияет.
5 мар 16, 22:28    [18901800]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
AIS
Member

Откуда:
Сообщений: 1695
кстати, в вашем сообщении в скрипте это и видно :)
5 мар 16, 22:31    [18901808]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
sboyko
Member

Откуда:
Сообщений: 528
AIS,

насколько я понимаю tooltip Dw или любой другой видимый объект воспринимаются как окно с системой координат. далее координаты мыши передаются объекту и он сам(объект) определяет подробности - то есть ячейку и строку.
непонятка в том что объект - DW один а поведение разное- с учетом скролла и без него.
то есть для ГРИДА нужно одно программирование а для ФОРМы другое - что то здесь неправильно...
может для другого DW - третий способ программирования?
6 мар 16, 18:55    [18903621]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
sboyko
Member

Откуда:
Сообщений: 528
AIS
кстати, в вашем сообщении в скрипте это и видно :)

по моему совсем не видно
6 мар 16, 18:55    [18903626]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
AIS
Member

Откуда:
Сообщений: 1695
sboyko
AIS,
насколько я понимаю tooltip Dw или любой другой видимый объект воспринимаются как окно с системой координат. далее координаты мыши передаются объекту и он сам(объект) определяет подробности - то есть ячейку и строку.
непонятка в том что объект - DW один а поведение разное- с учетом скролла и без него.
то есть для ГРИДА нужно одно программирование а для ФОРМы другое - что то здесь неправильно...
может для другого DW - третий способ программирования?

Третий способ - это когда, например, надо всплывающую подсказку делать как в списке, поверх ячейки с её содержимым, если текст в неё не помещается. Тогда и не только координаты ячейки нужны, а ещё и, например, тип и размер шрифта. Это так к слову.
sboyko
AIS
кстати, в вашем сообщении в скрипте это и видно :)

по моему совсем не видно

согласен, поторопился, кроме строки и номера столбца, ничего ))
6 мар 16, 22:49    [18904314]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
sboyko
Member

Откуда:
Сообщений: 528
AIS
sboyko
AIS,
насколько я понимаю tooltip Dw или любой другой видимый объект воспринимаются как окно с системой координат. далее координаты мыши передаются объекту и он сам(объект) определяет подробности - то есть ячейку и строку.
непонятка в том что объект - DW один а поведение разное- с учетом скролла и без него.
то есть для ГРИДА нужно одно программирование а для ФОРМы другое - что то здесь неправильно...
может для другого DW - третий способ программирования?

Третий способ - это когда, например, надо всплывающую подсказку делать как в списке, поверх ячейки с её содержимым, если текст в неё не помещается. Тогда и не только координаты ячейки нужны, а ещё и, например, тип и размер шрифта. Это так к слову.
sboyko
пропущено...

по моему совсем не видно

согласен, поторопился, кроме строки и номера столбца, ничего ))

тип и размер шрифта нужны если пользуешься тултипом своей разработки. если пользоваться родным виндузовым тултипом - то система делает это как то сама и очень даже неплохо - лично мне последний вариант нравится намного больше чем самоделки- хотя каждому свое....
7 мар 16, 22:02    [18906774]     Ответить | Цитировать Сообщить модератору
 Re: tooltip  [new]
sboyko
Member

Откуда:
Сообщений: 528
AIS,

Теперь Datawindow работают отлично! спасибо.
НО!
U_DW - все равно работает странно! что то показывает что то нет! может про это что то известно?
9 мар 16, 11:49    [18910415]     Ответить | Цитировать Сообщить модератору
Все форумы / PowerBuilder Ответить