问题列表 - 第17717页

Swing问题/ JTree /自定义树模型

我有一个问题和希望,有人知道出了什么问题以及为什么并且能够给我解释我现在错过的东西,以使该东西按照建议工作.

我有一个基于自定义TreeModel的JTree("WRTreeModel",见下文).该模型应用于的数据结构是包含一些字段的根对象的构建,以及由下面所示的"ArrayListModel"支持的列表.当我使用WRTreeModel构建它时,树看起来很好.我能够展开和折叠表示对象中包含的列表和字段的节点.我可以展开和折叠这些列表并查看其内容等等.

现在我想删除其中一个列表的子节点 - 正如我已经知道的那样 - 通过从调用ArrayListModel的remove方法的模型中删除它来实现它.为了使WRTreeModel知道删除,首先要调用它的fireIntervalRemoved方法被调用,到目前为止一直这么好.

在WRTreeModels内部类ArrayModelListener中,intervalRemoved方法准备fireTreeNodesRemoved的调用,然后构建一个TreeEvent,该TreeEvent被转发到所有已注册的TreeModelListeners(因此当它连接到模型时,它自动注册自己的JTree).

现在我希望树能够反映变化并更新它的内部和视觉表示以显示新状态.不幸的是,这似乎并没有这样做.有事情发生.但是,当我点击节点时,我刚刚更改了一些EventHandler-Exceptions被抛出.显然有些事情真的很混乱.

我知道在飞行中回答这样的问题并不容易,但我真的很感激快速回答.如果有人知道网站解释使用自定义树模型(不是在DefaultMutableTreeNode或任何给定的基于实现的类)以及如何处理和更新JTree的工作,那么它也会有所帮助.

最诚挚的问候,

托马斯艺术


public class ArrayListModel<E> extends ArrayList<E> implements ListModel {

...

public E remove(int index) {
    fireIntervalRemoved(index, index);
    E removedElement = super.remove(index);
    return removedElement;
  }

...

}
Run Code Online (Sandbox Code Playgroud)
public class WRTreeModel extends LogAndMark implements TreeModel {


  class ArrayModelListener implements ListDataListener {

  ...

    @Override
    public void intervalRemoved(ListDataEvent e) {
      int[] indices = new int[e.getIndex1() - e.getIndex0() + 1];
      for (int i = e.getIndex0(); i < e.getIndex1(); i++)
        indices[i - e.getIndex0()] = i; …
Run Code Online (Sandbox Code Playgroud)

java events swing jtree

5
推荐指数
1
解决办法
6901
查看次数

从集合中检索lambda表达式

我对C#中的lambda表达式很新,而且我很难概念化它们在集合中的存储/检索方式.

我正在尝试以编程方式创建10个Funcs x => x + 1,x => x + 2等的列表作为测试.我想要的输出是0,1,2,3,4,5,6,7,8,9

这是我的代码:

 var list = new List<Func<int, int>>();
 for (int i = 0; i < 10; i++)
 {     
   Func<int, int> func = x => x + i;
   Console.WriteLine("a) " + func.Invoke(0)); //returns 0,1,2,3,4,5,6,7,8,9

   list.Add(func);
   Console.WriteLine("b) " + list[i].Invoke(0)); //returns 0,1,2,3,4,5,6,7,8,9
 }

 foreach (var func in list) //returns 10,10,10,10,10,10,10,10,10,10
   Console.WriteLine("c) " + func.Invoke(0)); 

 for(int i = 0; i < list.Count; i++) //returns 10,10,10,10,10,10,10,10,10,10
    Console.WriteLine("d) " + list[i].Invoke(0)); 
Run Code Online (Sandbox Code Playgroud)

Func …

c# lambda

4
推荐指数
2
解决办法
416
查看次数

在SQL中的Table-returned-function中使用if语句的问题

我已将我的功能简化为以下内容:

create function [dbo].[UserSuperTeams](@ProjectId int) 
returns table 
as 
return 
   if @ProjectId=0
   begin 
      select TeamId from TblTeam t 
        union
      select 0 as TeamId
   end
   else
   begin
      select t.TeamId from TblTeam t
        union
      select 1 as TeamId
   end;
go
Run Code Online (Sandbox Code Playgroud)

我无法使它工作..似乎我有一些语法错误,但我无法弄清楚如何让它工作..任何想法?

sql sql-server sql-function

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

在匿名函数中测试JavaScript函数

可以在myInnerFunction下面测试吗?

var val = function() {
    var myInnerfunction = function(input) {
        return input + ' I ADDED THIS';
    };
    return myInnerfunction('test value');
}();
Run Code Online (Sandbox Code Playgroud)

因为myInnerFunction它本质上是匿名执行的外部函数的私有成员,所以它似乎不是从外部可测试的.

javascript testing

8
推荐指数
2
解决办法
2201
查看次数

如何与SFTP服务器通信

我为我们的客户编写了一项服务,使用FTP自动将文件传输到给定目的地.由于历史原因,我正在使用WinInet执行FTPing.一切正常,但现在客户想要添加一个只接受SFTP连接的目的地.

我真的不喜欢从头开始实现这个的想法,那么有没有办法本地或通过WinInet与SFTP服务器进行通信?有没有我可以使用的系统库(我不担心P/Invoke :))?我是否必须为此购买第三方组件 - 如果是,您会建议哪些?

.net c# sftp

8
推荐指数
2
解决办法
2万
查看次数

表命名:下划线与Camelcase?命名空间?奇异与多元?

我一直在阅读StackOverflow上的几个问题/答案,试图找到"最好的",或者我应该说是必须接受的方式,来命名数据库上的表.

大多数开发人员倾向于根据需要数据库的语言(JAVA,.NET,PHP等)命名表.但是我觉得这不对.

到目前为止,我一直在命名表的方式是:

doctorsMain
doctorsProfiles
doctorsPatients
patientsMain
patientsProfiles
patientsAntecedents 
Run Code Online (Sandbox Code Playgroud)

我关心的是:

  • 易读性
  • 快速识别表格所在的模块(医生||患者)
  • 易于理解,以防止混淆.

我想阅读有关命名约定的任何意见.谢谢.

database database-design

78
推荐指数
8
解决办法
7万
查看次数

用moq或rhino mock或其他东西模拟out参数

我尝试使用NMock2但是在尝试将模拟传递给构造函数时我得到了TypeLoadExceptions,我也看到TypeMock可以做到这一点,但它花费80美元

parameters unit-testing mocking

5
推荐指数
1
解决办法
5206
查看次数

为节点提供XPath的XML查看器/编辑器

我是一个XSLT设计器,我发现很难手动输入节点的XPath表达式.是否有任何XML编辑器或查看器可以为我提供可以复制粘贴的 XPath表达式?我想把它们放在XSL文件中.

xml editor xml-editor

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

验证输入时的电子邮件

在我的页面上,用户(内部员工)可以键入以逗号分隔的电子邮件地址列表.我想要做的是每次输入逗号时都会检查新写的电子邮件地址是否在地址簿中.

目前我将地址簿存储为Hashtable,用于O(1)搜索时间,但如果推荐,我可以轻松切换到另一个数据结构.

c# asp.net verification

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

matlab中的matlab矩阵函数

我注意到matlab确实很快就能完成一些矩阵函数,例如,即使矩阵很大,也会立即对n*n数组的所有元素添加5,因为你不需要遍历每个元素,在java中也是如此如果矩阵很大,for循环将永远存在.

我有两个问题,java中是否有高效的内置类用于执行矩阵运算,其次我如何编写代码来更有效地更新java中大矩阵的所有元素.

java matlab

5
推荐指数
2
解决办法
2820
查看次数