Dans une application elipse-rcp, je définis la couleur d'arrière-plan d'une ligne dans une table jface, mais je ne souhaite pas que cette sélection change cette couleur. Je veux être en mesure de spécifier le changement de couleur pour une ligne sélectionnée.Comment modifier la couleur de sélection d'arrière-plan pour une table jface
4
A
Répondre
7
Selon this thread, pour JFace Viewers
(ListViewer
, Table
, Tree
) au moyen de l'utilisation EraseItem
et MeasureItem
événements
Principe général détaillé dans l'article "Custom Drawing Table and Tree Items"
SWT.EraseItem
: permet à un client Personnaliser l'arrière-plan et/ou la sélection d'une cellule et déterminer si le premier plan de la cellule doit être dessiné
6
table.addListener(SWT.EraseItem, new Listener() {
public void handleEvent(Event event) {
event.detail &= ~SWT.HOT;
if ((event.detail & SWT.SELECTED) == 0) return; /// item not selected
Table table =(Table)event.widget;
TableItem item =(TableItem)event.item;
int clientWidth = table.getClientArea().width;
GC gc = event.gc;
Color oldForeground = gc.getForeground();
Color oldBackground = gc.getBackground();
gc.setBackground(colorBackground);
gc.setForeground(colorForeground);
gc.fillRectangle(0, event.y, clientWidth, event.height);
gc.setForeground(oldForeground);
gc.setBackground(oldBackground);
event.detail &= ~SWT.SELECTED;
}
});
+0
@ks: merci pour vos commentaires. +1 Vous pouvez choisir votre propre message comme réponse officielle si vous le souhaitez – VonC
Questions connexes
- 1. Comment modifier la couleur d'arrière-plan des éléments sélectionnés dans une zone de sélection multiple?
- 2. MVC couleur alternée pour la table
- 3. couleur de sélection pour un UITableViewCell
- 4. couleur de sélection Listview
- 5. Modifier la couleur d'arrière-plan du menu en fonction de la sélection du menu
- 6. Modifier la couleur de surbrillance du texte sélectionné dans RichEdit
- 7. Utilisation du service Sélection sur quelque chose qui n'est * pas * une vue JFace
- 8. Modifier la couleur (arrière-plan?) Derrière une vue inversée?
- 9. iPhone-SDK: Comment définir la couleur de fond pour View et non pour la Table?
- 10. Modifier la couleur d'un bouton dans une action contextuelle standard
- 11. Modifier la couleur du tilde (~) dans Vim
- 12. Modifier la couleur commune dans ControlTemplate
- 13. colonnes de la table de sélection (jQuery)
- 14. Comment faire une sélection dans une sélection
- 15. Modifier la règle couleur de la règle dans Eclipse
- 16. GTK: Modifier la couleur bg d'un coches
- 17. DISsable JFace Champ TextCellEditor
- 18. Comment définir la propriété UITableViewCellSelectionStyle sur une couleur personnalisée?
- 19. Couleur de police de la liste de sélection désactivée
- 20. La table ne conserve pas la sélection
- 21. Styler la couleur de sélection d'un type d'entrée = texte, possible?
- 22. Comment faire pour modifier une couleur de série dans Excel en utilisant C#?
- 23. Comment modifier une table PostgreSQL et rendre une colonne unique?
- 24. WPF ListView inactif Sélection de couleur et de l'élément couleur de la police
- 25. comment pouvons-nous changer la couleur de l'indicateur de sélection de la vue du sélecteur?
- 26. Comment modifier la table de routage par programmation
- 27. JFace TreeViewer scintillant
- 28. Sélection d'éléments avec une certaine couleur d'arrière-plan
- 29. Modifier la couleur du bouton de lien désactivé
- 30. DataGridView - "Style de sélection de cellule" - Modifier la cellule
Merci VonC. En utilisant le code de l'exemple ci-dessus, j'ai été capable de faire ce que je voulais. –