Question

Je ne vous demande pas comment faire cela, mais plutôt "comment vous appelleriez cela?".

J'ai un NSTableView avec plusieurs cellules personnalisées. Je souhaite que le tableau défile ligne par ligne, ce qui signifie que lorsque je déplace la barre de défilement vers le haut, je souhaite que la ligne du haut disparaisse et que lorsque je la déplace vers le bas, je souhaite également que la ligne du bas disparaisse - je ne souhaite pas voir la moitié de ma cellule. .

Comment appelez-vous ce type de comportement? Et pouvez-vous partager des indications si vous l'avez implémenté dans un NSTableView?

Était-ce utile?

La solution

Je ne sais pas exactement comment cela s'appelle (peut-être quelque chose comme "défilement contraint"?), mais vous pouvez le faire en utilisant NSView du -adjustScroll de . code> méthode.

L'approche générale consiste à créer une sous-classe de NSTableView (si vous n'en avez pas déjà une) et à remplacer cette méthode pour renvoyer un NSRect qui sa valeur origin.y est limitée à un multiple de la hauteur de vos lignes.

Vous voudrez probablement aussi utiliser le -setVerticalLineScroll: de NSScrollView pour définir la quantité appropriée à faire défiler lorsque l'utilisateur clique sur les flèches de défilement de la barre de défilement verticale. Vous pouvez obtenir le scrollView en appelant -enclosingScrollView sur votre tableView.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top