标签: jide

寻找有关JIDE的反馈

我即将开始开发相当大的基于Java的桌面应用程序.在查看JIDE组件和框架之后,它似乎是一个很好的解决方案.我想听听使用这些产品的人的意见.他们有多可靠?什么是学习曲线?优点和缺点?

java swing jide

8
推荐指数
3
解决办法
3819
查看次数

如何表明JComboBox正在加载值?

我有一个JComboBox,其值通过网络检索.

我正在寻找一种向用户指示该事实的方法,当用户想要查看列表时,展开下拉列表,然后检索数据.

基本要求包括:

  1. JComboBox的下拉菜单不应该锁定EDT,但是在有值之前,组合的动作不应该起作用.
  2. 用户应该知道何时检索了所有数据.
  3. 指示的大小(UI不动产)应尽可能小.

请注意,在用户想要查看组合的值(即展开下拉列表)之前,不会检索数据.

我用过的解决方案:

我使用了一个SwingWorker来保持UI响应.组合框使用JIDE's覆盖Overlayable,JIDE InfiniteProgressPanel聆听工作人员.

java swing jcombobox event-dispatch-thread jide

6
推荐指数
1
解决办法
476
查看次数

如何在Jide Pivot Table中多次使用相同的字段?

我发现,我只能在Jide Table中使用每个字段一次.例如,如果我计算某些字段的平均值,我无法计算相同字段的总和.

有可能克服吗?

UPDATE

以下是Jide PivotTable的示例,右侧打开了现场面板:

在此输入图像描述

如您所见,从字段面板中取出并拖动到数据区域或行区域的字段将从字段面板中消失.这意味着任何字段只能存在于一个区域中.

这同样意味着API方法PivotField#setAreaType(),它具有标量参数.即,一个字段只能分配给一个区域类型.

这导致我Region Area在基础源中复制了4次字段:一个用于值,一个用于平均值,一个用于最小值,一个用于最大值.

同时,希望用不同的聚合函数对相同的字段进行多次计数看起来很一般,如果数据透视表不允许开箱即用,这很奇怪.

java swing pivot-table jide

5
推荐指数
0
解决办法
104
查看次数

同步两个 JTable 的视图

我有两个JTables,一个在主视口,一个在页脚视口,使用JideScrollPane. 问题是当 mainJTable的视图被自定义时,页脚JTable保持不变,有什么方法可以同步它们的视图吗?

谢谢。

不同步

java swing jtable jtableheader jide

4
推荐指数
1
解决办法
1804
查看次数

JTable无法从SwingWorker线程更新

我目前有一个JTable,其中填充了一系列数据,这些数据构成了导入屏幕的基础.当我选择了我想要或不想要的更新时,我按下Apply按钮并成功应用更新,但JTable没有完全更新.

这是处理应用更改的方法的代码:

private void doProcessChanges() {
    ChangeProcessor cp = new ChangeProcessor();
    final List<Integer> rowsToRemove = new ArrayList<Integer>();
    BeanTableModel<UpdateModel> model = (BeanTableModel<UpdateModel>) table.getModel();

    for (int i=0; i<model.getRowCount(); i++) {
        UpdateRow ur = mode.getObject(i);
        if (ur.isAccepted() <> ChangeAcceptance.NO_ACTION) {
           cp.processChange(ur);
           rowsToRemove.add(i);
        }
    }

   SwingUtilities.invokeLater(new Runnable() {

        @Override
        public void run() {
            for (int row : rowsToRemove) {
                model.removeObject(row);
                model.fireTableDataChanged();
            }
    }
);
}
Run Code Online (Sandbox Code Playgroud)

从SwingWorker线程中调用该方法,如下所示:

 SwingWorker<Object, Object> worker = new SwingWorker<Object, Object>() {

                    @Override
                    protected Object doInBackground() throws Exception {
                        doProcessChanges();
                        return null; …
Run Code Online (Sandbox Code Playgroud)

java swing jtable swingworker jide

0
推荐指数
1
解决办法
936
查看次数