Umbrage Napisano Kwiecień 8, 2019 Autor Zgłoś Napisano Kwiecień 8, 2019 Na liscie mam kilka wierszy, obok scroll. Czy da sie zrobic tak, by po wyczyszczeniu i ponownym zapelnieniu listy suwak stal na starej pozycji, a nie na poczatku? Cytuj
Visage Napisano Kwiecień 8, 2019 Zgłoś Napisano Kwiecień 8, 2019 Jasne zrob tak: 1. pobierz pozycje 2. wyczysc liste 3. zapelnij liste 4. ustaw pozycje Nie wiem w czym problem ? Cytuj
Jarema Napisano Kwiecień 9, 2019 Zgłoś Napisano Kwiecień 9, 2019 Zgadzam się z przedmówcą. Musisz najpierw pobrać index elementu znajdującego się na samej górze, jest do tego specjalna funkcja. Potem użyc scrollowania, pobrany_index*wysokość_elementu. Wtedy będzie działało bezbłędnie. Cytuj
Umbrage Napisano Kwiecień 10, 2019 Autor Zgłoś Napisano Kwiecień 10, 2019 Zgadzam się z przedmówcą. Musisz najpierw pobrać index elementu znajdującego się na samej górze, jest do tego specjalna funkcja. Potem użyc scrollowania, pobrany_index*wysokość_elementu. Wtedy będzie działało bezbłędnie. Jak się nazywa ta specjalna funkcja? Zakładam, że ten sposób działa nawet gdy lista nie ma aktywnego elementu. Cytuj
Jarema Napisano Kwiecień 10, 2019 Zgłoś Napisano Kwiecień 10, 2019 Sorki ze nie napisalem odrazu, ale nie mialem przy sobie MSDN. ListView_GetTopIndex( hList ); - to funkcja na pobranie najwyzszego elementu. ListView_Scroll( hList, 0, cxSpace ) ); - tak scrollujesz. ListView_GetItemRect( hList, 0, &rect, LVIR_BOUNDS ); - tak pobierasz wysokość elementu ListView, z tym że cy = rect.bottom - rect.top; To chyba wszystko. :) Cytuj
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.