星期日 2007年08月05日
JB2005里面的SWING代码的自动生成
JB2005里面的SWING代码,上其中用JB做桌面应用程序时,当你切换到视图时,JB会在类中自动添加一个jbInit()方法,同时生成一个不带入参的构造函数,在这个构造函数里调用jbInit()方法。
import java.awt.Toolkit;
import javax.swing.SwingUtilities;
import javax.swing.UIManager;
import java.awt.Dimension;
public class TestApplication {
boolean packFrame = false;
/**
* Construct and show the application.
*/
public TestApplication() {
TestJFrame frame = new TestJFrame();//创建一个主界面类对象
// Validate frames that have preset sizes
// Pack frames that have useful preferred size info, e.g. from their layout
if (packFrame) {
frame.pack();//调整此窗口的大小,以适合其子组件的首选大小和布局
} else {
frame.validate();//验证此容器及其所有子组件
}
// Center the window
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();//获得屏幕大小
Dimension frameSize = frame.getSize();
if (frameSize.height > screenSize.height) {//判断屏幕高
frameSize.height = screenSize.height;
}
if (frameSize.width > screenSize.width) {//判断屏幕宽
frameSize.width = screenSize.width;
}
frame.setLocation((screenSize.width - frameSize.width) / 2,//重新调整窗体在屏幕中的位置
(screenSize.height - frameSize.height) / 2);
frame.setVisible(true);//设置窗体为可见
// frame.setResizable(false);//设置窗体不可调整大小
}
/**
* Application entry point.
*
* @param args String[]
*/
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
UIManager.setLookAndFeel(UIManager.//setLookAndFeel()使用一个类名称设置当前的默认外观
getSystemLookAndFeelClassName());//getSystemLookAndFeelClassName()返回本机外观的一个类
} catch (Exception exception) {
exception.printStackTrace();
}
new TestApplication();
}
});
}
}
在TestJFrame生成一个不带参数的构造函数。
public Test JFrame() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}