2009-08-25 5 views
1

J'ai actuellement un NSTableView dans un NSScrollView et ceci obtient son contenu d'une source de données. Cependant, lorsque le nombre de contenus est supérieur à celui que la vue peut contenir, l'utilisation de la barre de défilement verticale n'affecte pas le contenu de la table.Barre NSScrollView ne faisant pas défiler les lignes NSTableView

  • Faire glisser la barre de défilement ne le fait pas travail
  • En cliquant sur les boutons Haut/Bas ne pas travail
  • En utilisant la molette de défilement moyenne sur une souris fait travail
  • À l'aide des touches fléchées du clavier
  • il au-dessus de deux déplacer la barre de défilement vertical de haut en bas

  • Essayé Copie sur Parchemin On et Off

  • Le NSTableView a deux colonnes, l'une est un champ de texte et l'autre est un champ d'image

  • Aucune erreur n'apparaît dans la console

Cela semble très bien que la barre de défilement verticale est connectée à la vue de la table, mais seulement dans une direction. C'est la tableview change la barre de défilement mais pas vice versa.

Quelqu'un a-t-il déjà eu un tel problème? Ou savoir ce qui pourrait être la cause?

Répondre

0

Le problème ici semble provenir de la présence de NSTableView dans un prototype NSCollectionView. Je l'ai résolu en séparant la vue de NSCollectionViewItem de la plume principale dans son propre afin qu'il ait maintenant sa propre instance et défile correctement.

+0

J'ai le même problème mais NSTableView n'est pas dans un prototype NSCollectionView. – adib

+0

J'ai trouvé la raison pour laquelle les barres de défilement existent mais elles sont en dehors des limites de la fenêtre parente. Je l'ai trouvé accidentellement en essayant les différents styles de bordure de NSScrollView. – adib

0

Vérifiez le -target du -verticalScroller (NSScroller) du NSScrollView. C'est probablement nul. Comment avez-vous créé le NSScrollView? Avez-vous lu le Scroll View Programming Guide?

+0

Les deux NSTableView et NSScrollView ont été créés en faisant glisser un composant Vue tabulaire de la bibliothèque Interface Builder. En regardant les liaisons de la vue défilement et les NSScrollers je ne peux voir aucune connexion ou liaison relative à une cible. En fait, il n'y a rien qui relie la table et la scrollview visible - je suppose que c'est simplement fait dans les coulisses par IB. Malheureusement, ma journée de travail tire à sa fin, je vais donc devoir lire le guide demain. – Septih

0

La même situation m'est arrivée. Même la barre de défilement verticale de ma table ne s'affichait pas verticalement. Il s'affichait en tant que barre de défilement horizontale dans le coin inférieur droit de la tableview. Je l'ai corrigé en décochant la propriété "Automatically Hide ScrollBar" de scrollview dans le fichier xib.

Questions connexes