NSBrowser

mimivdcmimivdc Membre
13:03 modifié dans API AppKit #1
Bonsoir à  tous,

Je cherche à  visualiser des enregistrements dont je ne connais pas l'ordre a priori et qui pourront être modifiées à  l'intérieur d'une "feuille de saisie". Il m'est donc impossible d'utiliser un NSTableWiew, je dois passer par un NSBrowser. Quelqu'un a-t'il déjà  utilisé cette interface. Je n'arrive tout simplement pas à  créer mes colonnes.

Merci bien pour vos suggestions.

Réponses

  • 13:03 modifié #2
    Tu dois avoir une feuille comme dans un tableur?

    Si c'est le cas, en théorie c'est nstableview que tu devrais utiliser, mais en pratique c'est vrai que ce n'est pas évident (J'ai aussi ce problème)... Et NSBrowser ne convient pas du tout. J'ai remarqué que dans Keynote pour la feuille d'entrée des données des graphes, Apple a recréé une classe à  partir de NSControl pour faire ça (qui utilise peut être du NSTableView ceci dit).

    Pour ma part, je refais une classe, que je pourrai te passer une fois terminée (licence LGPL) mais il faut me laisser du temps, je suis en période d'examens et je fais ça par petits morceaux ;).
  • mimivdcmimivdc Membre
    13:03 modifié #3
    Merci beaucoup, Renaud.

    Je cherche effectivement une feuille de type tableur, mais améliorée car je dois y insérer des menus, pouvoir cacher ou montrer une colonne, pouvoir sélectionner un bouton dans les lignes, etc... J'ai fait un super truc avec Carbon basé sur cette API, mais je préfèrerais la refaire dans Cocoa.

    Si cela t'intéresse, demande à  oxitan mon programme de comptabilité PME et regarde du côté de la saisie du journal...

    En outre, la NSTableView - quoique assez pratique (elle est facile à  paramétrer dans IB et l'accès aux données est simple) - renvoit en n° de ligne un "int". Je suppose donc qu'elle est limitée à  256 lignes, or je peux en avoir dans mon cas des milliers, éventuellement filtrées...

    Je pense donc que le NSBrowser est le mieux, à  condition de comprendre son fonctionnement (qui semble loin du DataBrowser de Carbon).

    Michel.
  • BaardeBaarde Membre
    13:03 modifié #4
    Non, elle n'est pas limitée à  256 lignes. J'ai fait un test avec 40 000 lignes mais je pense qu'on peut en mettre encore plus... ;)
  • BruBru Membre
    13:03 modifié #5
    dans 1104864690:

    En outre, la NSTableView - quoique assez pratique (elle est facile à  paramétrer dans IB et l'accès aux données est simple) - renvoit en n° de ligne un "int". Je suppose donc qu'elle est limitée à  256 lignes, or je peux en avoir dans mon cas des milliers, éventuellement filtrées...


    Un int sous platerforme powerpc fait 32 bits (en fait 31 bits puisque le 32ème est réservé au signe).
    Donc le nombre théorique de ligne dans une NSTableView est 2147483648.

    .
  • mimivdcmimivdc Membre
    13:03 modifié #6
    Merci à  tous les gars, si quelqu'un a une idée pour affecter un N° d'enregistrement dans le cas d'une TableView au lieu de lire forcément de 0 à  x, ce serait génial ; sinon je vais essayer d'implémenter une table de recherche (style NSArray).

    Michel.
  • Eddy58Eddy58 Membre
    13:03 modifié #7
    Peut-être peux tu implémenter une donnée "numéro d'enregistrement" à  ton modèle ? Comme ca en fonction de la sélection dans ta tableview tu retrouves facilement le numéro d'enregistrement.
    Sinon tu peux aussi faire un NSDictionary pour un sytème de recherche par clefs......Ce ne sont que des suggestions il y a surement d'autres possibilités... 8)
Connectez-vous ou Inscrivez-vous pour répondre.