小编Sim*_*iil的帖子

Java在禁用的文本字段中设置字体颜色

我有一个禁用的JTextField,由于可读性问题,我想再次使字体变黑.所以看起来它没有被禁用,但我无法编辑它.有什么建议?

java fonts colors textfield

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

Java中的getPath()和Spaces

我最近遇到了getPath()的问题.

我的代码看起来像这样:

File path = new File(Main.class.getResource("/worlds/").getPath());
File[] files = path.listFiles();
Run Code Online (Sandbox Code Playgroud)

问题现在是,如果在Main类的Path中某处有空格,path.listFiles()则会返回null.如果没有空间,一切正常.

如果我打印到cmd的路径,我看到每个空格都被一个替换 %20

java file

9
推荐指数
2
解决办法
5321
查看次数

实际导航的Flutter导航抽屉

我有一个简单Scaffold的抽屉和一个身体。我想在抽屉中选择一个项目,并使脚手架的主体导航到新视图。

我发现的大多数方法(像这样)仅使用有状态的小部件,并在轻按抽屉项时更改其状态。

但是,这完全忽略了该应用程序的导航堆栈,并且按返回并不会按预期返回上一个视图。

另一方面,Navigator.of(context).push...单击项目时使用会使用导航堆栈,但会更改整个屏幕,这也不是我想要的。

我试图为脚手架的主体创建一个新的自定义导航器,但是在NavigatorState从抽屉访问时遇到了问题。

对我来说,这似乎是一个常见的问题(例如,所有google应用都以这种方式工作),而我对如何正确实现这一点感到困惑。自定义导航器是正确的方法吗?有可用的例子吗?

navigation scaffold flutter

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

JPA 与同一实体的多个 OneToMany 关系

我正在尝试构建 JPA 应用程序。我基本上有

@Entity
public class Folder {
  @Id
  @GeneratedValue(strategy = GenerationType.TABLE)
  private int id;
  private String description;
  private String name;

  @OneToMany(mappedBy = "parent", cascade = CascadeType.PERSIST)
  private List<AbstractItem> items = new LinkedList<AbstractItem>();

  @OneToMany(mappedBy = "parent", cascade = CascadeType.PERSIST)
  private List<AbstractItem> items2 = new LinkedList<AbstractItem>();
  .
  .
  .
}
Run Code Online (Sandbox Code Playgroud)

我可以成功地将一个项目添加到列表中item,并保留它。但是,如果我再次加载它,持久项的相同对象将同时出现在 Listsitemsitems2.

我尝试通过添加@JoinTable注释来解决此问题,但无法使其工作。

有什么建议么?

java jpa one-to-many eclipselink

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

简单快速的JTree Cell Editor

我有一个带有自定义TreeModel和自定义TreeRenderer的JTree.树模型包含一堆不同类型的对象.其中一种类型的显示方式与其他类型不同:显示的文本是对象的两个字段的串联.当我编辑单元格时,我想用编辑的文本更新其中一个字段.到目前为止,我的工作得很好.

我的问题:当编辑时显示的文本是2个字段的完整连接值时,即使您实际上只是编辑其中一个字段,这也很令人困惑.所以我想只显示用户开始编辑时正在编辑的一个字段的内容.

我尝试使用自定义CellEditor来做这件事,我看到它应该工作的方式,这种方法在我的情况下似乎有点过分.我只是想在很多情况下改变显示的文本,所以我自然而然地希望实现它,而不是整个CellEditor来完成我的Tree的整个内容.

是否有更快速,更简单的方法,或者我必须使用自定义编辑器?

谢谢

java swing jtree tablecelleditor

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

什么类加载器"新"使用,我如何更改它?

我正在开发一个简单的插件系统,我基本上想控制哪个类加载器在一条new指令上加载一个类.例如,我的主程序有一个jar,我Foo.class在一个名为的额外打包jar中分发一个类Bar.jar.

我看到在我的主程序中包含jar的三种不同的可能性:

  1. 包装Bar.jar用我的主要罐子将其包含在类路径中.对于插件系统来说,这显然是不可行的
  2. 加载类Foo与URL的ClassLoader指着罐子.这对于默认的java程序员来说太熟悉,无法通过名称手动加载类
  3. 通过-Djava.system.class.loader参数将自定义类加载器设置为System-classloader .但我真的不想强迫用户使用额外的参数启动他的应用程序.

还有另外一种方法吗?也许是为特定类注册Custom类加载器的东西?或更改Classloader new在运行时使用?设置ContextClassLoaderThread不工作.

java classloader

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

BufferedImage上的JButton Transparency

我有个问题:

我在JFrame中渲染BufferedImage.然后我将JButton添加到同一帧.当我试图使按钮透明时,按钮变得透明,但是忽略它的实际位置,它总是透明的,就像它被卡在框架的左上角一样.我测试了一些不同的方法来使按钮透明,总是具有相同的结果.

有任何想法吗?

谢谢

public class TestPanel extends JPanel {

public TestPanel(){
    JButton foo = new JButton("test");
    foo.setBackground(new Color(0, 0, 0, 0));
    foo.setBounds(20, 100, 300, 50);
    this.add(foo);
}

public void paint(Graphics g){
    Graphics2D g2 = (Graphics2D) g;
    g2.drawImage(ImageFactory.getImg(), 0, 0, null); //get a BufferedImage
    g2.dispose();
}
Run Code Online (Sandbox Code Playgroud)

}

java swing transparency bufferedimage jbutton

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

Java RMI中代码库的重点是什么?

我目前正在学习RMI.

我真的不明白代码库的概念.我读过的每篇论文都暗示,调用Remote对象的客户端可以从代码库加载Method定义.现在问题是:我不需要在类路径中使用描述/接口吗?如果我在运行时只知道它们,我如何调用远程对象上的方法?这甚至不会编译.

我完全忽略了这一点吗?那么代码库到底有什么意义呢?提供代码库似乎需要很多额外的工作和要求

谢谢

java rmi codebase

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

Java中有效且漂亮的字符串条件

我对代码风格有疑问:

假设我有一个包含一些信息的字符串(如"Information1"或"Information2").基于此我想用工厂创建对象.显然我可以这样写:

if(string.equals("Information1")){
  Factory.createInformation1Object();
}
if(string.equals("Information2")){
  Factory.createInformation2Object();
}
if(string.equals("Information3")){
  Factory.createInformation3Object();
}
Run Code Online (Sandbox Code Playgroud)

现在我想知道是否有更好(更漂亮)的方法来做到这一点.我真的很喜欢访问者模式的多重调度思路,但我无法看到一种方法可以轻松地应用这个特定的问题.

java string conditional-statements

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