例子:
import java.awt.*
import java.awt.event.WindowEvent
import java.awt.event.WindowListener
public class testFrame extends Frame
{
public testFrame(int width,int height)
{
this.setSize( width,height)
this.setLocation(testFrame.getMidDimesion( new Dimension(width,height)))
this.setBackground( Color.BLACK )
this.setVisible( true)
this.addWindowListener(new WindowListener()
{
public void windowOpened(WindowEvent arg0) {
// TODO Auto-generated method stub
}
public void windowClosing(WindowEvent arg0) {
// TODO Auto-generated method stub
System.exit(0)
}
public void windowClosed(WindowEvent arg0) {
// TODO Auto-generated method stub
}
public void windowIconified(WindowEvent arg0) {
// TODO Auto-generated method stub
}
...获取屏幕的长度和高度雀备,然后在location 方法里进行设置边界是它们的一半就可以了,下面的getMidDimesion方法就是这样。
例子:
import java.awt.*
import java.awt.event.WindowEvent
import java.awt.event.WindowListener
public class testFrame extends Frame
{
public testFrame(int width,int height)
{
this.setSize( width,height)
this.setLocation(testFrame.getMidDimesion( new Dimension(width,height)))
this.setBackground( Color.BLACK )
this.setVisible( true)
this.addWindowListener(new WindowListener()
{
public void windowOpened(WindowEvent arg0) {
// TODO Auto-generated method stub
}
public void windowClosing(WindowEvent arg0) {
// TODO Auto-generated method stub
System.exit(0)
}
public void windowClosed(WindowEvent arg0) {
// TODO Auto-generated method stub
}
public void windowIconified(WindowEvent arg0) {
// TODO Auto-generated method stub
}
public void windowDeiconified(WindowEvent arg0) {
// TODO Auto-generated method stub
}
public void windowActivated(WindowEvent arg0) {
// TODO Auto-generated method stub
}
public void windowDeactivated(WindowEvent arg0) {
// TODO Auto-generated method stub
}
})
}
public static Point getMidDimesion(Dimension d)
{
Point p = new Point()
Dimension dim = Toolkit.getDefaultToolkit().getScreenSize()
p.setLocation((dim.width - d.width)/2,(dim.height - d.height)/2)
return p
}
public static void main(String[] args)
{
new testFrame(300,200)
}
}
如果只是一些文本要显示,可以在上面加个JTextArea,JTextField之类的组件,用这些组件的对象调用setText(" ")方法(括号里是字符串)来显示文本
比如:
import 迹信java.awt.FlowLayout
import java.awt.event.ActionEvent
import java.awt.event.ActionListener
import java.util.HashMap
import java.util.Map
import javax.swing.JButton
import javax.swing.JFrame
import javax.swing.JScrollPane
import javax.swing.JTextArea
/** 文本区域
*
* @author Administrator
*
*/
public class TextArea extends JFrame {
private static final long serialVersionUID = 2306597749734227012L
private JButton b1 = new JButton("Add Data"租核), b2 = new JButton("Clear Data")
private JTextArea text = new JTextArea(20, 40)
private Map<String, String> map =
new HashMap<String, String>()
public TextArea() {
// Use up all the data:
map.put("a", "1")
map.put("b", "2")
b1.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
for(@SuppressWarnings("rawtypes") Map.Entry me : map.entrySet()){
text.append(me.getKey()+": "+me.getValue()+"\n")
}
}
})
b2.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
text.setText("")
}
})
setLayout(new FlowLayout())
add(new JScrollPane(text))
add(b1)
add(b2)
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
GUItools.SwingConsole.run(new TextArea(), 475, 475)
}
}
JTextField和这差不多,只不过是显示单行的。
如果要显示其他字体的,可以用HTML格式,如下:
import java.awt.FlowLayout
import java.awt.event.ActionEvent
import java.awt.event.ActionListener
import javax.swing.JButton
import javax.swing.JFrame
import javax.swing.JLabel
/** Swing 组件上的HTML
*
* @author Administrator
*
*/
@SuppressWarnings("serial")
public class HTMLButton extends JFrame {
private JButton b = new JButton(
"<html><b><font size=+2>"+
"<center>Hello!<br><i>Press me now!")
// 必须使文本以 "<html>" 标记开始姿型轮。
public HTMLButton() {
// TODO Auto-generated constructor stub
b.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
add(new JLabel("<html>"+"<i><font size=+4>Kapow!"))
// Force a re-layout to include the new label:
validate()
}
})
setLayout(new FlowLayout())
add(b)
}
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
GUItools.SwingConsole.run(new HTMLButton(), 200, 500)
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)