Jpropertytable : une jtable adaptée pour faire une fenêtre de propriété à la visual studio

Soyez le premier à donner votre avis sur cette source.

Vue 7 925 fois - Téléchargée 1 021 fois

Description

Depuis le temps que j'en parlais !

Voici donc ma property table : il s'agit d'une JTable avec des fonctionnalités supplémentaires afin de faciliter son utilisation pour en faire une table de propriété : une table à 2 colonnes, une colonne pour du texte statique, et une colonne pour éditer les valeurs.

Le plus simple reste de regarder la capture d'écran pour comprendre ce que je veux dire.

Au menu des cellEditor disponibles pour l'instant :
String
Integer
Double
FileName
Boolean
Date
Hour
Color
Enum (combo pour que l'utilisateur sélectionne une valeur dans une liste de choix).

J'ai utilisé le DatePicker de microba pour l'editeur de date, j'ai donc mis le jar de microba dans mon zip.

Source / Exemple :


// Utilisation très simple :

/**

  • Création de la table des propriétés :
  • /
CCustomTableModel oModeleAffichage = new CCustomTableModel(); oModeleAffichage.setColumnCount(2); oModeleAffichage.setRowCount(9); oModeleAffichage.setColumnName(0, "Propriété"); oModeleAffichage.setColumnName(1, "Valeur"); JPropertyTable oTable = new JPropertyTable(oModeleAffichage); oTable.setMaximumSize(new Dimension(300, 600)); oTable.setColumnSelectionAllowed(false); oTable.setRowSelectionAllowed(false); oTable.addPropertyRow(0, "Texte", EDataTypes.dataTypeString, "Toto", null); oTable.addPropertyRow(1, "Fichier", EDataTypes.dataTypeFileName, "", null); oTable.addPropertyRow(2, "Entier", EDataTypes.dataTypeInteger, 1, null); oTable.addPropertyRow(3, "Flottant", EDataTypes.dataTypeFloat, 1.50, null); oTable.addPropertyRow(4, "Booléen", EDataTypes.dataTypeBoolean, true, null); oTable.addPropertyRow(5, "Couleur", EDataTypes.dataTypeColor, Color.red, null); oTable.addPropertyRow(6, "Heure", EDataTypes.dataTypeHour, new Date(), null); oTable.addPropertyRow(7, "Date", EDataTypes.dataTypeDate, new Date(), null); Vector<String> oVecteur = new Vector<String>(); oVecteur.add("*"); oVecteur.add("**"); oVecteur.add("***"); oVecteur.add("****"); oVecteur.add("*****"); oTable.addPropertyRow(8, "Enumération", EDataTypes.dataTypeEnum, 0, oVecteur); JScrollPane sclTable = new JScrollPane(oTable); sclTable.setBounds(oTable.getBounds()); add(sclTable); /**
  • Lecture des données de la table :
  • /
System.out.println(oModeleAffichage.getValueAtName("Texte").getValue());

Conclusion :


Un petit bug : pour l'éditeur de flottant, bizarrement le texte s'alligne à droite alors que je lui dit de rester à gauche, je vois pas la raison de ce bug, si quelqu'un à une idée, qu'il n'hésite pas !

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
100
merci lex, en effet, c'est le propertytable que j'utilise maintenant (celui de l2fprod, comme tu peux le voir dans mes dernières sources :p).
Messages postés
220
Date d'inscription
jeudi 30 mars 2006
Statut
Membre
Dernière intervention
26 octobre 2007
1
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
100
Je tiens à remercier Indiana_jules pour son PictureBrowser que j'ai intégré dans ma source afin d'avoir un apercu des images lors de leur ouverture par un JFileChooser.

DarK Sidious

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.