我一直在将 JFormDesigner 与运行时库一起使用,以在运行时直接从 .jfd 文件创建对话框(我无法更改;不是我的决定)。我的问题是运行时库似乎没有保留 .jfd 文件中列出的任何自定义代码生成。例如,如果我有一个简单的面板,背景设置为红色,初始化后命令将背景设置为绿色,运行时库将产生红色背景,而直接加载生成的 .java 文件将正确设置背景为绿色。
这是我正在做的代码示例:
public class EntryPoint
{
public static void main( String[] args )
{
// Load .jfd file. Shows red background (incorrect).
String form = "testProject/entry/TestDialog.jfd";
new EntryPoint(form);
// Load .java file. Shows green background (correct).
JFrame frame = new JFrame();
TestDialog test = new TestDialog( frame );
test.setVisible( true );
}
EntryPoint( String form )
{
try
{
// Example loading
// see http://www.formdev.com/jformdesigner/doc/runtime-library/
FormModel formModel = FormLoader.load( form );
FormCreator formCreator = new FormCreator(formModel);
formCreator.setTarget(this);
JDialog dialog = formCreator.createDialog(null);
dialog.setModal(true);
dialog.pack();
dialog.show();
}
catch( Exception e )
{
e.printStackTrace();
}
}
}
我快速浏览了文档,但无济于事。我已向 JFD 的支持团队发送了一封电子邮件,如果我收到任何回复,我会更新问题。我现在正在查看运行时库代码(它是开源的),但很好奇在我走得太远之前是否有人知道它的任何信息。谢谢。