Ich versuche, ein ContextMenu in einer Struktur hinzuzufügen, um eine benutzerdefinierte Aktion durchzuführen. Dieser Baum ist in einem Overlay-Panel implementiert. Was ich beobachtet habe, ist, dass das contextMenu nur in zufälligen Situationen erscheint, wie nach dem Auswählen und Entfernen von Elementen in der Baumstruktur. Irgendeine Idee?Primefaces: ContextMenu erscheint nicht in overlayPanel
<p:overlayPanel id="advancedSearchPanel"
styleClass="ui-advanced-search-overlay"
for="advancedSearch"
hideEffect="fade"
my="right top"
widgetVar="advancedSearchPanelWidgetVar" >
<ui:include src="/search/advancedSearch-form.xhtml"/>
</p:overlayPanel>
Advancedform
<p:panelGrid id="panelAdvanced" styleClass="borderless">
...
<p:row>
<p:column colspan="4">
<p:outputLabel value="#{text['searchForm.classifiers']}" for="treeClassifier" styleClass="paddingLabelGrid"/>
<p:contextMenu id="contextSearch" for="treeClassifier">
<p:menuitem value="Escolha todos" update=":searchForm:treeClassifier" actionListener="#{navBarController.displaySelectedSingle}"/>
</p:contextMenu>
<p:tree id="treeClassifier"
value="#{navBarController.rootClassifier}"
var="node" selectionMode="checkbox"
selection="#{navBarController.selectedClassifiers}"
style="height: 200px;width: 540px; margin-bottom: 0px; overflow: auto"
propagateSelectionDown="false"
propagateSelectionUp="false">
<p:ajax event="select" update=":searchForm:btnSearch"/>
<p:ajax event="unselect" update=":searchForm:btnSearch"/>
<p:treeNode expandedIcon="ui-icon-folder-open" collapsedIcon="ui-icon-folder-collapsed">
<h:outputText value="#{node.description}(#{node.code})"/>
</p:treeNode>
</p:tree>
</p:column>
</p:row>
...
Bitte erläutern Sie viele Informationen. Möchtest du den Baum wechseln, wenn contextMenu ausgewählt wurde? – wittakarn
Warum bist du still, der Code funktioniert? – 0x5a4d
Nein, ich versuche Ihren Code, aber die Funktion onContextMenu wird nie erreicht. – tech4