启动JFrame
example, Sun所推荐的一种安全启动方式
public static void main(string[] args)
{
EventQueue.invokeLater(new Runnable())
{
public void run()
{
//Your code here
}
};
}
JFrame相关API
setSize(int width, int height)
setLocation(x,y)
setBounds(x,y,width,height)
setIconImage(Image imag)
setTitle(String title)
isLocationByPlatform()
setLocationByPlatform(boolean b)
isResizable()
setResizable(boolean b)
getExtendedState()
setExtendedState(int state)
获取窗口大小API
Toolkit kit = ToolKit.getDefaultToolkit();
Dimension screenSize = kit.getScreenSize();
int screenWidth = screenSize.width;
int screenHeight = screenSize.height;
设定图片
Image img = new ImageIcon("icon.gif").getImage();
setIconImage(img);
JFrame的结构相当复杂,在JFrame中有四层面板,其中的根面板、层级面板、玻璃面板人们并不关心。Swing程序员最关心的是内容窗格(content pane),添加组件到内容空格可以使用下面的代码:
Container contenPane = frame.getContentPane();
Component c = ''';
contentPane.add(c);
示例:
class MyFrame extends JFrame
{
public MyFrame()
{
add(new MyComponent());
pack();
}
}
可以将自定义的组件加到content pane里面,自定义的组件一般使用下面的模板,其中的Jcomponent也可以用JPanel来代替:
class MyComponent extends Jcomponent
{
public void paintComponent(Graphics g)
{
//code for drawing
}
}