2015-06-04 1 views
0

Я создал контроль скроллера для моего DataGrid со следующим кодом:Livecode- прокручивая DataGrid (с последним смещением)

function scroller_create tPoint 
    local tScrollerRect, tContentRect 
    if environment() is not "mobile" then exit scroller_create 

    put the rect of group "list" into tScrollerRect 
    put 0,0,(the DGformattedWidth of group "list"),(the DGformattedHeight of group "list") into tContentRect 

    mobileControlCreate "scroller", "listScroll" 
    put the result into sScrollerID 

    mobileControlSet "listScroll", "rect", tScrollerRect 
    mobileControlSet "listScroll", "contentRect", tContentRect 
    mobileControlSet "listScroll", "visible", true 
    mobileControlSet "listScroll", "scrollingEnabled", true 
    mobileControlSet "listScroll", "vIndicator", true 
    mobileControlSet "listScroll", "vScroll", tPoint 
end scroller_create 

Когда больше данных добавляются в DataGrid, я уничтожу и воссоздать скроллер контроль. Но я хотел, чтобы скроллер остался на последнем вертикальном сдвиге прокрутки (tPoint).

Но с mobileControlSet «listScroll», «VScroll», TPoint он все равно будет восстановить вертикальный скроллер назад к вершине, когда скроллер воссозданы ...

Есть ли другой способ, где я может исправить vscroll datagrid при последнем смещении?

Заранее благодарен!

ответ

0

Почему бы вам просто не изменить contenctRect? Однако храните vscroll в нестандартном разрезе с помощью mobileControlGet и установите его снова.

+0

Hi MaxV, спасибо за комментарий. Мне удалось установить DGVscroll для отображения списка, но как только я коснусь экрана телефона (и слайда), список будет подниматься вверх до самого верха, прежде чем сползать вниз ... Использование родного vScrollBar будет не вызывает этой проблемы. Странно ... все еще пытаться найти способ решить эту проблему. Спасибо! – Vikki

 Смежные вопросы

  • Нет связанных вопросов^_^