Java:初识GUI:居中显示一个窗口,并指定格式的文字和形状(第十一周)

版权声明:根据《中华人民共和国著作权法》,如需转载请标明来源并联系作者进行授权。本文作者保留依法追究未经授权转载等侵犯作者著作权等的违法行为之权利。 https://blog.csdn.net/qq_41933331/article/details/81981126

题目来源:大工慕课 链接
作者:Caleb Sung

题目要求

实施一个窗口来显示你的名字,你的ID和你的专业。 窗口应该位于屏幕的中心。


参考代码

窗口类:HelloGUIFrame

class HelloGUIFrame extends JFrame{
    public HelloGUIFrame() {
        setTitle("Hello GUI");
        setSize(300,300);
        setVisible(true);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        setLocation(screenSize.width / 2 - getSize().width / 2, screenSize.height / 2 - getSize().height / 2);
        add (new HelloGUIComponent(), BorderLayout.CENTER);
        add(new JButton("Click me!"), BorderLayout.SOUTH);
        validate();
    }
}

要素类:HelloGUIComponent

class HelloGUIComponent extends JComponent{
    public void paintComponent(Graphics g) {
        g.setColor(Color.BLUE);
        g.drawString("Hello, GUI World!", 50, 30);
        g.setColor(Color.RED);
        g.drawString("Name: Caleb_Sung", 50, 50);
        g.setColor(Color.GREEN);
        g.drawString("ID: 20180823", 50, 70);
        g.setColor(Color.PINK);
        g.drawString("Major: ComputerScience", 50, 90);
        g.setColor(Color.ORANGE);
        g.drawOval(50, 110, 50, 50);
    }
}

imports和主函数

可以看到主函数只有简单的一句话。此外,imports可以由IDE自动补全。

import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Toolkit;

import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.JFrame;

public class TestHelloGUI {
    public static void main(String[] args) {
        new HelloGUIFrame();
    }
}

运行效果

显而易见这里并没写响应点击按键后的响应事件,这部分内容将在之后的文章后进行描述。
这里写图片描述

猜你喜欢

转载自blog.csdn.net/qq_41933331/article/details/81981126