Besoin d'aide avec l'API Scrollbar pour une picturebox

Mew27 Messages postés 44 Date d'inscription mercredi 7 avril 2004 Statut Membre Dernière intervention 23 février 2008 - 15 janv. 2007 à 16:09
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 - 15 janv. 2007 à 19:08
Bonjour, je travailles présentement sur un projet personnel et j'aimerais faire mes propres controles, par exemple une listbox, dabord pour avoir mes propres controles et les arranger comme je veux visuellement et pour une question de goût.

A la base, j'essaie de faire une listbox, alors j'ai eu l'idée de prendre une picturebox et de lui attribuer des scrollbars.
J'aimerais bien passer par l'API windows pour ça, car les scrollbars de vb sont laides et ne sont pas standard.

J'ai essayé celle de vbaccelerator, mais il y a quelques bugs on dirait. Car lorsque je met comme valeur min 0 et max 10, smallchange 1 et largechange 2, je me retrouve avec une barre petit qui ne défile même pas en bas complètement avec les flèches.

A moins que je ne comprenne pas bien le ratio min/max/smallchange/largechange

De plus dans cette classe il y a un autre bug, puisque dans le menu contextuel de la scrollbar l'option: "scroll here" ou "défiler ici" ne fonctionne pas. J'ai observé le code, mais quand on corrige ça amnène d'autres problèmes.

Moi idéalement pour faire mes propres controles, j'aurais seulement besoin d'avoir quelque chose sans bug qui puisse fonctionner normalement, mais je n'ai rien trouvé de très concret sur google.

Est-ce que quelqu'un pourrait m'aider svp ? :)

1 réponse

jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
15 janv. 2007 à 19:08
Voilà le 2ème en une semaine, à déclarer que les scrollBars de Windows ne lui plaisent pas !

Alors vas-y : défoule toi, certes, mais alors totalement, en fabricant la tienne, car les fpnctions de l'Api de Windows ne te conduiront pas ) du mieux !

Mais si tu veux savoir celles de l'Api qu'il te faudrait utiliser (en conjonction, bien évidemment , ma foi, les voilà :
  GetWindowLong
  SetWindowLong

avec :

InitializeFlatSB
UninitializeFlatSB
FlatSB_SetScrollProp
FlatSB_EnableScrollBar
FlatSB_GetScrollInfo
FlatSB_GetScrollProp
FlatSB_GetScrollRange
FlatSB_SetScrollInfo
FlatSB_SetScrollPos
Function FlatSB_SetScrollRange
Function FlatSB_ShowScrollBar
et Function FlatSB_GetScrollPos

Prends ton pied...
0
Rejoignez-nous