【问题标题】:Programmatically select and clear selection on an ADF DVT piegraph以编程方式选择和清除 ADF DVT 饼图上的选择
【发布时间】:2012-10-11 06:58:50
【问题描述】:

我正在使用饼图并基于单击饼图进行一些页面交互。这些工作正常。

<dvt:pieGraph id="graph1" tabularData="#{dc.bean.tabularData}" dataSelection="single" selectionListener="#{dc.bean.transfersGraphSelectionListener}"/>

但是我无法支持以下用例

  1. 在图表外部单击(或再次单击选定的数据集)会导致饼图失去其选择。
  2. 在页面上有一个清除按钮,该按钮会强制图表丢失其当前选择。
  3. 以编程方式选择图表中的数据集之一

我检查了 UIGraph API,但找不到太多信息。

任何提示都会很有帮助。

【问题讨论】:

  • 告诉我们您的 jdev 版本会有所帮助。 selectionListener 是做什么的?如果将表格数据设置为空模型会怎样?
  • 嗨蒂莫,感谢您的回复。我正在使用 Jdev 12.1.2,但是我也可以使用任何与 Jdev11g 兼容的解决方案。
  • 我的选择监听器读取选择事件并找到点击了transfersGraphSelectionListener(SelectionEvent selectionEvent){ Set&lt;GraphSelection&gt; selectionSet = selectionEvent.getGraphSelection(); for (GraphSelection selection : selectionSet) { if (selection instanceof DataSelection) { DataSelection ds = (DataSelection) selection; Set seriesKeySet = ds.getSeriesKey().keySet(); for (Object key : seriesKeySet) { Object selectedKey = ds.getSeriesKey().get((String) key)) }的区域
  • 我需要知道如何使用工具栏中的清除按钮以编程方式清除图表中的选择。

标签: view graph pie-chart jdeveloper oracle-adf


【解决方案1】:

请在您的原始帖子中添加正确的代码。这就是你的代码的样子

transfersGraphSelectionListener(SelectionEvent selectionEvent){ 
  Set<GraphSelection> selectionSet = selectionEvent.getGraphSelection(); 
  for (GraphSelection selection : selectionSet) { 
    if (selection instanceof DataSelection) { 
      DataSelection ds = (DataSelection) selection; 
      Set seriesKeySet = ds.getSeriesKey().keySet(); 
      for (Object key : seriesKeySet) { 
        Object selectedKey = ds.getSeriesKey().get((String) key)) 
      }

好像少了点什么!

【讨论】:

  • 嗨 Timo Hahn,Object selectedKey = ds.getSeriesKey().get((String)key) 给了我选择的图表中数据行的名称。现在,如果我在页面上有一个带有动作侦听器的按钮,我想从中清除对图形的选择,那么我该怎么做? adf pieGraph 在我的 bean 中有一个绑定。我希望我的情况现在更清楚了吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-04-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多