vendredi 27 novembre 2009

Entre QT et Cocoa : QTableWidget vs. NSTableView

Aujourd'hui, je vous propose un petit comparatif pas très équitable. Je dit cela car mon expérience en QT4 est largement inférieur à celle que j'ai en Cocoa.
Cependant, je préfère largement Cocoa sur la gestion de l'affichage des données dans un tableau.
Les différences :
- Cocoa utilise un objet qui est "passif" (se contente de répondre à des demandes) alors que QT4 oblige le développeur à remplir le tableau à la main !
- En QT4, il y a une différence entre la ligne active et la ligne sélectionné, je vois pas pourquoi !
- En QT4, si on souhaite bloquer la sélection à une simple ligne cela implique une sélection obligatoire
- En QT4, vous sélectionnez une cellule pas une ligne !
- En QT4, la ligne sélectionné peu vous poser des problèmes quand vous souhaitez rafraîchir le contenu de la table.
- Lors de l'ajout d'une ligne il faut créer soit même la ligne et ajouter les objets pour chaque cellule.
- Par contre, en QT4 la table est bien plus souple et plus configurable. Mais à quel prix !
- En Cocoa, le changement de sélection renvoie un message au delegate, en QT4 la selection d'une cellule appelle une fonction.

Il y a de forte chance que j'utilise mal les QTableWidget. Mais je trouve aussi que c'est un peu le basard dans la façon de faire. Il y a un peu de MVC et du "fait tout toi même" !

Un souhait de cadeau : Cocoa en multi-plateforme ! Apple ?

2 commentaires:

Unknown a dit…

On peut modifier le mode de sélection, ainsi on peut passer d'une sélection par cellule à une sélection par ligne ;-)

Wisky a dit…

Oui, mais le comportement attendu de façon native est la sélection de la ligne ;)