NSCombobox et autoremplissage
chaps31
Membre
Je me heurte à un problème déjà rencontré et déjà discuté ici. EN relisant le post j'ai trouvé la solution sauf à un dernier soucis, pourtant à l'époque je l'avais résolu sans dire comment.. J'ai regardé mon ancien code sans succès (mais c'est le bordel aussi ce code... )
J'ai une NSCombobox qui va très bien se remplir avec le tableau que j'ai spécifié en datasource, lorsque je tape il essai de remplir le champs avec une valeur de la liste, très bien très bien.
Sauf que... tout ça marche uniquement si je sélectionne la liste une fois, car sinon la combobox ne va pas par défaut chercher le datasource... Un reloadData dans le awakeFromNib ne marche pas, j'ai essayé pas mal de trucs sans succès, SOS... Si j'ai la réponse je la marque cette fois.
NB : Il semble que la dernière fois un IBAction est résolu le problème, mais impossible à reproduire...
http://www.objective-cocoa.org/forum/index.php?topic=2734.msg27347#msg27347
J'ai une NSCombobox qui va très bien se remplir avec le tableau que j'ai spécifié en datasource, lorsque je tape il essai de remplir le champs avec une valeur de la liste, très bien très bien.
Sauf que... tout ça marche uniquement si je sélectionne la liste une fois, car sinon la combobox ne va pas par défaut chercher le datasource... Un reloadData dans le awakeFromNib ne marche pas, j'ai essayé pas mal de trucs sans succès, SOS... Si j'ai la réponse je la marque cette fois.
NB : Il semble que la dernière fois un IBAction est résolu le problème, mais impossible à reproduire...
http://www.objective-cocoa.org/forum/index.php?topic=2734.msg27347#msg27347
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Si c'est dans un awakeFromNib aussi tu risques d'avoir des soucis.
Mais tant que l'utilisateurs ne clique pas sur la combobox il ignore le datasource...
dans IB, j'ai bien relié la combo avec mon objet contrôleur en tant que delegate, et dans le awakeFromNib, j'utilisais la méthode setUsesDataSource: à YES pour indiquer que la liste utilise une datasource.
Sauf que ça marchotait bancalement.
En initialisant tout dans IB (et datasource et cochage "Uses Data Source" dans l'inspecteur de la combo), tout fonctionne normalement.
L'auto remplissage fonctionne immédiatement (sans déroulement initial de la liste, ni utilisation d'un reloadQuelqueChose).
Ca marche mais le reloadData est nécessaire dans mon awakeFromNib