NSComboBox et dataSource

VeillardVeillard Membre
01:14 modifié dans Xcode et Developer Tools #1
Bonsoir,

J'essaie de remplir des NSComboBox avec des dataSources externes. Pour cela, j'ai créé un NSArray pour chaque ComboBox. J'ai ensuite implémenté ceci :
- (int)numberOfItemsInComboBox:(NSComboBox *)aComboBox<br />{<br /> return [comboBoxMarque count];<br />}<br /><br />- (id)comboBox:(NSComboBox *)aComboBox objectValueForItemAtIndex:(int)index<br />{<br />       if (aComboBox == typeMatosField)<br />  {<br />         comboBoxType = [NSMutableArray arrayWithObjects :@&quot;Bloc&quot;, @&quot;Détendeur&quot;]; <br />             return [comboBoxType objectAtIndex:index];<br />        }<br /> else<br />      {<br />         comboBoxMarque = [NSArray arrayWithObjects :@&quot;Scubapro&quot;, @&quot;Spirotechnique&quot;]; <br />         return [comboBoxMarque objectAtIndex:index];<br />      }<br />}<br />


j'ai enfin signalé "use dataSource" dans mon nib puis connecté chaque ComboBox au File's Owner et choisi "dataSource".

Et malgré tout au lancement de mon appli, le contenu des Combo est resté désespérément vide  :(

Quelqu'un a-t-il une idée ???

Merci

Réponses

  • mpergandmpergand Membre
    août 2004 modifié #2
    Salut favouille,
    Est-ce qu'un petit reloadData résoudrait ton problème ?

    [edit]

    Bof, ça marche trés bien sans...


    [Fichier joint supprimé par l'administrateur]
  • VeillardVeillard Membre
    01:14 modifié #3
    J'avais essayé et toujours rien...
  • VeillardVeillard Membre
    01:14 modifié #4
    Ca y est, ça marche !

    J'ai analysé ton code sous Java et j'avais pas fait de grosses ereurs sauf dans l'initialisation de mon tableau avec des "strings", je me suis rendu compte qu'il ne contenait aucun objet. Je l'ai donc garni de la manière suivante :
    <br />                tableauDesMarques = [[NSMutableArray alloc] init];<br />                [tableauDesMarques addObject :@&quot;Aqualung&quot;];<br />             [tableauDesMarques addObject :@&quot;Balaena&quot;];<br />              [tableauDesMarques addObject :@&quot;Bare&quot;];<br />etc....<br />
    


    Je crois qu'il y a une manière plus élégante de procéder, mais je ne vois pas comment faire  :-\
  • BruBru Membre
    01:14 modifié #5
    Pour charger un tableau avec plusieurs objets :

    <br /><br />    tableauDesMarques = [[NSMutableArray arrayWithObjects:@&quot;Aqualung&quot;, @&quot;Balaena&quot;, @&quot;Bare&quot;, nil] retain];<br /><br />
    


    Note le nil en fin de liste pour indiquer que la liste d'objets est terminée. Sans cela, le tableau reste vide...

    PS : la mienne est une Aqualung.

    .
  • VeillardVeillard Membre
    01:14 modifié #6
    Merci beaucoup ! j'avais essayé cette méthode mais sans le retain. Je comprends pourquoi ça ne fonctionnait pas...

    PS : la mienne est une Aqualung.


    Très bon matos  ;)

    A+
Connectez-vous ou Inscrivez-vous pour répondre.