日期:2014-05-20  浏览次数:20775 次

Java Frame
我想在一个frame的子类里用null布局写一个指定组建位置的窗口 但是
Frame_win(String s) {

super(s);
setLayout(null);
t_File_Name = new TextField();


Toolkit tool = getToolkit();
Dimension dim = tool.getScreenSize();
setBounds(dim.width / 3, dim.height / 3, dim.width / 3, dim.height / 3);

add(t_File_Name);
t_File_Name.setBounds(5, 5, 24, 8);


setVisible(true);

}
}

但是发现这么写的窗口是一片白 什么都没有 求指教

------解决方案--------------------
Frame的起始坐标我估计是窗口的最左上角,然后你写的文本框x和y坐标太小,导致文本框被标题栏遮住
你可以看看下面的代码
Java code

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class TestFrame extends Frame
{
    public TestFrame(String s) 
    {    
        super(s);
        setLayout(null);
        TextField t_File_Name = new TextField();        
        
        Toolkit tool = getToolkit();
        Dimension dim = tool.getScreenSize();
        setBounds(dim.width / 3, dim.height / 3, dim.width / 3, dim.height / 3);
        
        add(t_File_Name);
        t_File_Name.setBounds(20, 20, 24, 8);        
        
        setVisible(true);        
    }
    
    public static void main(String[] args)
    {
        Frame frame = new TestFrame("Hello,World!");
        frame.setSize(400, 300);
        frame.setVisible(true);
        //frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.addWindowListener(new WindowAdapter()
            {
                public void windowClosing(WindowEvent event)
                {
                    System.exit(0);
                }
            });
    }
}