j'utilise un framework Delphi qui propose des composants encapsulant du code Ext JS 7.5.1
par défaut le menu déroulant d'une grille affiche 3 items : le tri ascendant, le tri descendant et l'item "Colonnes" qui permet d'afficher une sous-liste pour cocher/décocher les colonnes visibles de la grille. J'ajoute à ce menu "par défaut" 2 checkbox supplémentaires de Tri et de Filtre comme ceci :
Jusqu'ici tout va bien. Mais quand je clique sur la case à cocher "Tri" (ou "Filtre") alors le menu déroulant n'affiche plus l'item "Colonnes", même en cliquant sur une autre entête de colonne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 function beforerender(sender, eOpts) { var menu = this.headerCt.getMenu(); // désactive les menus de tri //menu.items.get("ascItem").hide(true); //menu.items.get("descItem").hide(true); // ajoute le menu pour le tri et le filtre menu.add( [ { itemId: 'checkSortMenuItem', text: 'Tri', checked: false, handler: function() { ajaxRequest(sender, 'OnTriChange', ['checked='+this.checked.toString()]); } }, { itemId: 'checkFilterMenuItem', text: 'Filtre', checked: false, handler: function() { ajaxRequest(sender, 'OnFiltreChange', ['checked='+this.checked.toString()]); } } ] ); }
Comment réafficher le menu déroulant "en entier" par code avec Ext JS (version 7.5.1) et dans quel évènement ?
Partager