我有一个禁用的JTextField,由于可读性问题,我想再次使字体变黑.所以看起来它没有被禁用,但我无法编辑它.有什么建议?
我最近遇到了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
我有一个简单Scaffold的抽屉和一个身体。我想在抽屉中选择一个项目,并使脚手架的主体导航到新视图。
我发现的大多数方法(像这样)仅使用有状态的小部件,并在轻按抽屉项时更改其状态。
但是,这完全忽略了该应用程序的导航堆栈,并且按返回并不会按预期返回上一个视图。
另一方面,Navigator.of(context).push...单击项目时使用会使用导航堆栈,但会更改整个屏幕,这也不是我想要的。
我试图为脚手架的主体创建一个新的自定义导航器,但是在NavigatorState从抽屉访问时遇到了问题。
对我来说,这似乎是一个常见的问题(例如,所有google应用都以这种方式工作),而我对如何正确实现这一点感到困惑。自定义导航器是正确的方法吗?有可用的例子吗?
我正在尝试构建 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,并保留它。但是,如果我再次加载它,持久项的相同对象将同时出现在 Listsitems和items2.
我尝试通过添加@JoinTable注释来解决此问题,但无法使其工作。
有什么建议么?
我有一个带有自定义TreeModel和自定义TreeRenderer的JTree.树模型包含一堆不同类型的对象.其中一种类型的显示方式与其他类型不同:显示的文本是对象的两个字段的串联.当我编辑单元格时,我想用编辑的文本更新其中一个字段.到目前为止,我的工作得很好.
我的问题:当编辑时显示的文本是2个字段的完整连接值时,即使您实际上只是编辑其中一个字段,这也很令人困惑.所以我想只显示用户开始编辑时正在编辑的一个字段的内容.
我尝试使用自定义CellEditor来做这件事,我看到它应该工作的方式,这种方法在我的情况下似乎有点过分.我只是想在很多情况下改变显示的文本,所以我自然而然地希望实现它,而不是整个CellEditor来完成我的Tree的整个内容.
是否有更快速,更简单的方法,或者我必须使用自定义编辑器?
谢谢
我正在开发一个简单的插件系统,我基本上想控制哪个类加载器在一条new指令上加载一个类.例如,我的主程序有一个jar,我Foo.class在一个名为的额外打包jar中分发一个类Bar.jar.
我看到在我的主程序中包含jar的三种不同的可能性:
Bar.jar用我的主要罐子将其包含在类路径中.对于插件系统来说,这显然是不可行的Foo与URL的ClassLoader指着罐子.这对于默认的java程序员来说太熟悉,无法通过名称手动加载类-Djava.system.class.loader参数将自定义类加载器设置为System-classloader .但我真的不想强迫用户使用额外的参数启动他的应用程序.还有另外一种方法吗?也许是为特定类注册Custom类加载器的东西?或更改Classloader new在运行时使用?设置ContextClassLoader的Thread不工作.
我有个问题:
我在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)
}
我目前正在学习RMI.
我真的不明白代码库的概念.我读过的每篇论文都暗示,调用Remote对象的客户端可以从代码库加载Method定义.现在问题是:我不需要在类路径中使用描述/接口吗?如果我在运行时只知道它们,我如何调用远程对象上的方法?这甚至不会编译.
我完全忽略了这一点吗?那么代码库到底有什么意义呢?提供代码库似乎需要很多额外的工作和要求
谢谢
我对代码风格有疑问:
假设我有一个包含一些信息的字符串(如"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 ×8
swing ×2
classloader ×1
codebase ×1
colors ×1
eclipselink ×1
file ×1
flutter ×1
fonts ×1
jbutton ×1
jpa ×1
jtree ×1
navigation ×1
one-to-many ×1
rmi ×1
scaffold ×1
string ×1
textfield ×1
transparency ×1