Scrollen einer Bildliste



  • hi,

    ich mach das mal als neues Thema. Wie in meinem letzten verzweifelten Versuch http://www.c-plusplus.net/forum/viewtopic.php?t=56600 zu lesen ist hab ich noch ein Problem: ⚠ In dem Listenelement soll die Bildliste gescrollt und dabei die Bilder neu gezeichnet werden. 😕

    Von dem Listenelement habe ich eine Membervariable erstellt. Bin nun auf der Suche nach einer Lösung auf folgende 2 Funktionen gestoßen.

    1. ScrollWindow 😕
    2. ScrollWindowEx 😕

    Hab auch grad die FAQ durchsucht und dabei nichts gefunden, wie und ob ich überhaupt eine der beiden Funktionen verwenden kann. 😕

    Hat vieleicht einer ne Idee wie das Funktionieren könnte? 😮

    Hab mir das grob so vorgestellt 🤡 :

    m_DieMemberVar.ScrollWindow("hier alles rein wie in MSDN");
    {
         m_DieMemberVar.UpdateWindow();
    }
    

    Lieg ich schon beim Lösungsansatz vollkommen falsch?

    Also, please laßt mich nicht noch mehr Haare verlieren 😞 😞

    mfg blub 😕



  • Servus,

    wie schon jemand in dem letzten Thread von dir gesagt hat kannst du doch die Messi LVN_ENDSCROLL von dem ListCtrl abfangen.
    z.B.

    void CDeinDlg::OnLvnEndScrollList1(NMHDR *pNMHDR, LRESULT *pResult)
    {
    	LPNMLVSCROLL pStateChanged = reinterpret_cast<LPNMLVSCROLL>(pNMHDR);
    	// Lasse hier neuzeichnen
    	*pResult = 0;
    }
    

    Müsstet du eigentlich bei den Ereigenissen des Controls finden. Die Message lautet aufjedenfall LVN_ENDSCROLL. Ich habe das irgendwo schonmal gemacht ich gucke mal gleich wenn ich was finde gebe ich dir das.
    Aber normal wenn man durch das Control durchscrollt und man irgendwann aufhört kommt diese Messi und du kannst dann einfach die Bilder neuzeichnen lassen.

    *winke*
    Hellsgore



  • hi Hellsgore;

    Hellsgore schrieb:

    Müsstet du eigentlich bei den Ereigenissen des Controls finden. Die Message lautet aufjedenfall LVN_ENDSCROLL

    Ich find das net 😞 Wo schreibt das der Editor hin? 😕 Nachdem ich nun nochmal in der MSDN geblättert hab verstehe ich garnix mehr 😮
    ➡
    Minimum DLL Version None
    Header commctrl.h
    Minimum operating systems Windows XP 😕 Geht das wirklich nur mit XP?

    Noch der Link wo ich das fand http://msdn.microsoft.com/library/default.asp?url=/library/en-us/shellcc/platform/commctls/listview/notifications/lvn_endscroll.asp 😕

    mfg blub 😕


Anmelden zum Antworten