Info NSTableView

bassman_fr

Membre enregistré
11 Mai 2005
3
0
42
Bonjour, je suis grand débutant en cocoa et prog apple je vous remercie donc d'avance de votre indulgence.

Je cherche à construire une simple application type répertoire, avec une table des contacts qui resume sous forme de liste les contacts (noms prenom tel) .Des champs permettent d'ajouter des contacts à la liste. Je voudrais savoir comment on peut récupérer l'id de la ligne sélectionnée dans la table (à tout moment) et mettre à jour les champs avec les valeurs correspondantes aux contact sélectionné.
Est ce par le biais d'un event ? (style MouseDown ?)

Je vous remercie d'avance !
 
Bonjour,
tu as ceci :
Bloc de code:
selectedRow
- (int)selectedRow

Returns the index of the last row selected or added to the selection, or -1 if no row is selected.
 
Il faut utiliser le système des notifications , par exemple celle-ci NSTextViewDidChangeSelectionNotification. En gros tu t'abonnes au Notification Center, et tu déclares une procédure à exécuter lorsque ta table change de sélection. Pour plus de précisions voir la doc d'Apple.
 
Ps : il y a aussi les fonctions "delegate" comme celle-ci :
Bloc de code:
tableViewSelectionIsChanging:
  - (void)tableViewSelectionIsChanging:([url="http://developer.apple.com/documentation/Cocoa/Reference/Foundation/ObjC_classic/Classes/NSNotification.html#//apple_ref/doc/c_ref/NSNotification"]NSNotification[/url] *)aNotification
Tu designes un de tes objets comme le "delegate" de ta NSTableView et tu implementes la fonction dans ce "delegate".
Sinon si tu veux faire une mise a jour de ta fenetre quand la selection change, regardes aussi du cote des bindings.