Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » Bug when scrolling a window with virtual size greater than 65535 Collapse All
Subject Author Date
Christan HIRIGOYEN Nov 16, 2016 - 10:49 AM

Hi,

I use a CExtNCSB < CExtListCtrl > and I have problem when scrolling with a lot of elements.
The problem is on line 3445 of file Ex-tControlsCommon.cpp the position sent by Windows in the message is in a short word.

for a next release, could you integrate a patch like that? (you will have to do same for WM_HSCROLL)



        UINT nSBCode = UINT(LOWORD(DWORD(wParam)));
        UINT nPos = UINT(HIWORD(DWORD(wParam)));
        // Call GetScrollInfo to get current tracking
        // position in si.nTrackPos
        SCROLLINFO si;
        ZeroMemory(&si, sizeof(si));
        si.cbSize = sizeof(si);

        CExtNCSB_ScrollContainer * pWnd =
            NCSB_GetContainer(
            CExtNCSB_ScrollContainer::__EM_VERTICAL_SCROLL_BAR
            );
        if (pWnd) {
            ASSERT(pWnd->GetSafeHwnd() != NULL);
            CExtScrollBar * pScrollBar = pWnd->GetScrollBarInContainer();
            if (pScrollBar->GetScrollInfo(&si, SIF_RANGE | SIF_PAGE | SIF_POS | SIF_TRACKPOS)) { // GetScrollInfo failed: keep 16 bits value
                nPos = si.nTrackPos;
            }
        }

Regards,

TSELLC Support Nov 28, 2016 - 4:37 AM

Hi Christan,

We’ll correct the issue.

TSELLC_Support