Comment créer un composant "liste de propriétés" dans Swing? Je veux dire le type comme dans this ou this image. S'agit-il simplement d'un composant JTable personnalisé ou d'un composant personnalisé?Composant GUI de liste de propriétés dans Swing
4
A
Répondre
2
Il est vraiment un composant à base de table, mais la création de celui-ci n'est pas triviale. Je vous suggère d'utiliser celui déjà existant. Voici un lien vers un gratuit et très bon: http://www.l2fprod.com/common/
2
Si vous ne voulez pas le coder vous-même, JideSoft a un composant appelé PropertyPane. Cela fait partie de leur forfait Jide Grids qui coûte 299,99 $.
Je n'ai pas utilisé ce composant spécifique, mais je peux dire par expérience que leurs composants sont très bien polis et exécutés.
A webstart demo of all their components
HTH
Koen
2
Voici un exemple de base que vous pourriez être en mesure de personnaliser votre utilisation:
import java.awt.*;
import java.util.*;
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.table.*;
public class TablePropertyEditor extends JFrame
{
public TablePropertyEditor()
{
String[] columnNames = {"Type", "Value"};
Object[][] data =
{
{"String", "I'm a string"},
{"Date", new Date()},
{"Integer", new Integer(123)},
{"Double", new Double(123.45)},
{"Boolean", Boolean.TRUE}
};
JTable table = new JTable(data, columnNames)
{
private Class editingClass;
public TableCellRenderer getCellRenderer(int row, int column)
{
editingClass = null;
int modelColumn = convertColumnIndexToModel(column);
if (modelColumn == 1)
{
Class rowClass = getModel().getValueAt(row, modelColumn).getClass();
return getDefaultRenderer(rowClass);
}
else
return super.getCellRenderer(row, column);
}
public TableCellEditor getCellEditor(int row, int column)
{
editingClass = null;
int modelColumn = convertColumnIndexToModel(column);
if (modelColumn == 1)
{
editingClass = getModel().getValueAt(row, modelColumn).getClass();
return getDefaultEditor(editingClass);
}
else
return super.getCellEditor(row, column);
}
// This method is also invoked by the editor when the value in the editor
// component is saved in the TableModel. The class was saved when the
// editor was invoked so the proper class can be created.
public Class getColumnClass(int column)
{
return editingClass != null ? editingClass : super.getColumnClass(column);
}
};
table.setPreferredScrollableViewportSize(table.getPreferredSize());
JScrollPane scrollPane = new JScrollPane(table);
getContentPane().add(scrollPane);
}
public static void main(String[] args)
{
TablePropertyEditor frame = new TablePropertyEditor();
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
}
Questions connexes
- 1. Composant de vue de planification dans Swing
- 2. Java GUI Swing Modèle Explication
- 3. Comment déterminer un composant swing?
- 4. JAVA Swing GUI Composants comment afficher RTL?
- 5. Ajout composant Java GUI sur événement de souris
- 6. Quand un composant Swing est-il 'affichable'?
- 7. Utilisation du composant Swing étendu, doute de thread
- 8. vacillante de composant Swing lorsque mis à jour beaucoup
- 9. Peindre des chaînes RTF/HTML dans un composant swing personnalisé
- 10. Dans un composant WebPart SharePoint, comment définir la liste d'un composant WebPart lors de l'exécution?
- 11. Java AWT ou Swing pour la construction GUI?
- 12. Comment définir une image en arrière-plan pour Frame dans Swing GUI de Java?
- 13. GUI de l'Agenda Google GUI
- 14. Cadre de création Java GUI
- 15. App Engine Liste de propriétés Jruby DataMapper
- 16. Problème lors de la mise à jour du titre dans le composant JInternalFrame GUI
- 17. Définir le délai d'attente de l'info-bulle pour un composant particulier dans Java Swing
- 18. Supprimer le composant Swing en utilisant Valider ou Revalider
- 19. Liste des propriétés intégrées de l'objet
- 20. GUI: Modification des panneaux en fonction de la valeur de la zone de liste déroulante
- 21. Utilisation des propriétés de liste déroulante dans C# NET 3.5
- 22. Swing Matisse GUI - impossible d'ajouter un bean personnalisé à "Autres composants"
- 23. Pourquoi la plate-forme GUI de Java est-elle nommée "Swing?"
- 24. Dilemme de la frontière GUI
- 25. Comment intégrer Webcam dans l'application Swing de Java?
- 26. JFreeChart pour les graphiques xy dynamiques dans l'application java swing gui
- 27. Affichage du composant WebPart Affichage de liste pour une liste dans un autre site
- 28. Iphone GUI code de physique
- 29. Exécution de composants SWT dans une application Swing
- 30. Composant pouvant servir de volet éditeur
Merci, celui-ci est génial! –