Попался интересный пример на asm, реализации которого ещё не видел.
https://disk.yandex.ru/d/ou-zBcggAtHNuw
На главном форуме тоже ничего не ищется. Более 1000 строк кода с SSE регистрами и ещё х64. Мне о потрировании этого и думать страшно. Но, может, кому-то когда-то понадобится)
ListView animation анимация
Страница: 1
	Сообщений 1 страница 2 из 2
Поделиться113.08.2022 21:37:32
Поделиться213.08.2022 22:08:02
Там не ListView а обычное окно в котором отображается картинка. Что-то типа канваса.
Код:
						        ;; Create child window (for D2D content)
        ;;register window class
       .new wc:WNDCLASSEX
        mov wc.cbSize,        WNDCLASSEX
        mov wc.style,         CS_HREDRAW or CS_VREDRAW
        mov wc.lpfnWndProc,   &ChildWndProc
        mov wc.cbClsExtra,    0
        mov wc.cbWndExtra,    sizeof(LONG_PTR)
        mov wc.hInstance,     HINST_THISCOMPONENT
        mov wc.hIcon,         NULL
        mov wc.hIconSm,       NULL
        mov wc.hbrBackground, NULL
        mov wc.lpszMenuName,  NULL
        mov wc.hCursor,       LoadCursor(NULL, IDC_ARROW)
        mov wc.lpszClassName, &@CStr(L"D2DListViewApp")
        RegisterClassEx(&wc)
       .new d2dWindowSize:D2D1_SIZE_U
        this.CalculateD2DWindowSize(&d2dWindowSize)
        ;;create window
        .if CreateWindowEx(
                0,
                L"D2DListViewApp",
                L"",
                WS_CHILDWINDOW or WS_VISIBLE,
                0,
                0,
                d2dWindowSize.width,
                d2dWindowSize.height,
                [rsi].m_parentHwnd,
                NULL,
                HINST_THISCOMPONENT,
                this
                )
            mov [rsi].m_d2dHwnd,rax
            mov eax,S_OK
        .else
            mov eax,E_FAIL
        .endif
    .endif
    retСтраница: 1