Java/Swing - 如何减小JDialog构造函数的大小?

sak*_*das 1 java user-interface swing constructor

我正在用Java构建一个图形用户界面,我想知道是否有人可以给我一些指示.具体来说,当点击这个GUI中的一个按钮时,一个大的JDialog(它是一个扩展JDialog的类)打开,供用户输入一些信息,查看一些信息,点击一些东西等.

该类包含多个JLabel和其他组件.我的问题是如何创建这样的实例?现在我在构造函数中拥有所有内容,使其成为500(!)行构造函数.必须有一个替代品!构造函数大约有300行代码放置和设置代码,另外200行代表听众提供或接受.

另外一个问题是,现在我通过调用从另一个类打开这个窗口

MyClassExtendsJDIalog temp = new MyClassExtendsJDIalog();

但是我在创建它的类中根本不使用这个"temp"变量,因为"temp"的构造函数可以做到一切.看起来我再次以错误的方式做事.

感谢您阅读本文.

Tor*_*r P 5

如果你想拆分代码使其更具可读性和可管理性,你可以将这些字段分组到JPanel的子类中,即Panel1,Panel2等,然后只需在JDialog子类构造函数中添加它们.但是在摇摆中设置GUI会占用很多线路,是的......

至于未使用的临时变量,我猜你在构造函数中调用show()?通常我不会这样做,而是在创建对话框的代码中调用它,即.

MyDialog dialog = new MyDialog();
dialog.setVisible(true);
Run Code Online (Sandbox Code Playgroud)