使用Java Swing设计: 1.创建一个背景色为new Color(204, 204, 204)的窗口; 2.去掉窗口边框默认样式,且固定窗口大小;width:1100;height:700;无论屏幕大小,窗口居中显示。 3.在窗口最上方添加自定义的白色标题栏; 4.标题栏最右侧有最小化按钮,最大化按钮,关闭按钮,全部为白色;且鼠标移动到按钮上时,对应的按钮会高亮; 5.关闭窗口,进程也会结束;
时间: 2024-04-16 21:28:44 浏览: 97
您可以使用以下代码实现您的需求:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class CustomWindow extends JFrame {
private JPanel titleBar;
private JButton minimizeButton;
private JButton maximizeButton;
private JButton closeButton;
public CustomWindow() {
// 设置窗口背景色
getContentPane().setBackground(new Color(204, 204, 204));
// 去掉窗口边框默认样式
setUndecorated(true);
// 固定窗口大小
setSize(1100, 700);
// 窗口居中显示
setLocationRelativeTo(null);
// 添加标题栏
titleBar = new JPanel();
titleBar.setBackground(Color.WHITE);
// 创建最小化按钮
minimizeButton = new JButton("-");
minimizeButton.setBackground(Color.WHITE);
minimizeButton.setFocusPainted(false);
// 创建最大化按钮
maximizeButton = new JButton("口");
maximizeButton.setBackground(Color.WHITE);
maximizeButton.setFocusPainted(false);
// 创建关闭按钮
closeButton = new JButton("×");
closeButton.setBackground(Color.WHITE);
closeButton.setFocusPainted(false);
// 添加鼠标移动事件监听器,实现按钮高亮效果
ButtonMouseListener buttonMouseListener = new ButtonMouseListener();
minimizeButton.addMouseListener(buttonMouseListener);
maximizeButton.addMouseListener(buttonMouseListener);
closeButton.addMouseListener(buttonMouseListener);
// 添加按钮到标题栏
titleBar.add(minimizeButton);
titleBar.add(maximizeButton);
titleBar.add(closeButton);
// 添加标题栏到窗口
add(titleBar, BorderLayout.NORTH);
// 设置关闭窗口时退出进程
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
private class ButtonMouseListener extends MouseAdapter {
@Override
public void mouseEntered(MouseEvent e) {
JButton button = (JButton) e.getSource();
button.setBackground(Color.LIGHT_GRAY);
}
@Override
public void mouseExited(MouseEvent e) {
JButton button = (JButton) e.getSource();
button.setBackground(Color.WHITE);
}
}
public static void main(String[] args) {
SwingUtilities.invokeLater(() -> {
CustomWindow window = new CustomWindow();
window.setVisible(true);
});
}
}
```
您可以将以上代码保存在一个名为`CustomWindow.java`的文件中,并将其编译运行。这样就可以创建一个带有自定义标题栏和按钮的窗口,满足您的需求。关闭窗口时,进程也会结束。
阅读全文