import java.awt.*;
import javax.swing.*;
import javax.swing.border.*;
public class BorderDemo
{
public static void main(String[] args)
{
JFrame frame = new JFrame("边框演示");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel();
panel.setLayout(new GridLayout(0, 2, 5, 10));
panel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
JButton p1 = new JButton();
p1.setBorder(BorderFactory.createLineBorder(Color.red, 3));
p1.add(new JLabel("线边框"));
panel.add(p1);
JPanel p2 = new JPanel();
p2.setBorder(BorderFactory.createEtchedBorder());
p2.add(new JLabel("蚀刻边框"));
panel.add(p2);
JPanel p3 = new JPanel();
p3.setBorder(BorderFactory.createRaisedBevelBorder());
p3.add(new JLabel("斜面边框(凸)"));
panel.add(p3);
JPanel p4 = new JPanel();
p4.setBorder(BorderFactory.createLoweredBevelBorder());
p4.add(new JLabel("斜面边框(凹)"));
panel.add(p4);
JPanel p5 = new JPanel();
p5.setBorder(BorderFactory.createTitledBorder("标题"));
p5.add(new JLabel("标题边框"));
panel.add(p5);
JPanel p6 = new JPanel();
TitledBorder tb = BorderFactory.createTitledBorder("标题");
tb.setTitleJustification(TitledBorder.RIGHT);
p6.setBorder(tb);
p6.add(new JLabel("标签边框(右)"));
panel.add(p6);
JPanel p7 = new JPanel();
p7.setBorder(BorderFactory.createMatteBorder(1, 5, 1, 1, Color.yellow));
p7.add(new JLabel("花色边框"));
panel.add(p7);
JPanel p8 = new JPanel();
Border b1 = BorderFactory.createLineBorder(Color.blue, 2);
Border b2 = BorderFactory.createEtchedBorder();
p8.setBorder(BorderFactory.createCompoundBorder(b1, b2));
p8.add(new JLabel("组合边框"));
panel.add(p8);
JScrollPane scrollPane = new JScrollPane(panel);
scrollPane.setPreferredSize(new Dimension(300, 300));
frame.getContentPane().add(panel);
frame.pack();
frame.show();
}
}
分享到:
相关推荐
在给定的标题“圆形边框JPanel(JPanel图形改进)”中,我们讨论的是一个扩展了标准`JPanel`类的自定义组件,这个组件不仅拥有一个圆形的边框,还具备阴影效果和抗锯齿特性,以提供更高级的视觉体验。 首先,让我们...
开发者可以通过设置JFrame的大小、位置、边框、背景色等属性来定制窗口外观,并通过add()方法添加其他组件到JFrame上。 JPanel是Swing中另一个重要的组件,它是一个空白容器,可以用来放置其他的组件或者绘制自定义...
通过`createLineBorder`方法可以设置边框的颜色和宽度。例如: ```java p1.setBorder(BorderFactory.createLineBorder(Color.red, 3)); ``` 这里创建了一个红色、宽度为3像素的边框,并将其应用到按钮`p1`上。 ##...
并设置其大小、位置和默认关闭操作: ```java frame.setSize(400, 300); frame.setLocationRelativeTo(null); // 居中显示 frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ``` 2. **自定义边框**: ...
// 设置按钮的边框为空白边框,上右下左分别为10像素 button.setBorder(new EmptyBorder(10, 10, 10, 10)); panel.add(button); frame.add(panel); frame.pack(); frame.setVisible(true); } } ``` 这段...
标题边框的自定义Layout,正如描述中提到的,可以实现类似Java Swing中JPanel的效果,为内容区域提供一个有标题且带有边框的容器。这个自定义布局通常会用于封装一些特定功能或者视图,使得代码更易于管理和复用。 ...
- 边框:可以使用 `Border` 接口的实现类来为 `JPanel` 添加边框,增强视觉效果。 - 背景色:`JPanel` 的背景色可以通过 `setBackground(Color color)` 方法改变。 - 绘制:重写 `paintComponent(Graphics g)` ...
- drawRect(int x, int y, int width, int height):绘制矩形边框。 - drawOval(int x, int y, int width, int height):绘制椭圆。 - fillOval(int x, int y, int width, int height):填充椭圆。 - drawString...
解决JFrame去掉边框后不能动改变大小的一种解决方案,完美解决,只有给中间JPanel setborder就可以解决
在Java Swing库中,`JTabbedPane`是一个非常重要的组件,它允许用户在多个面板(JPanel)之间切换,每个面板都可以包含不同的内容。自定义`JTabbedPane`的外观可以提升应用程序的用户体验,使其更加个性化和专业。...
在`FireBorder.java`这个文件中,我们可以预期它包含了一个类,可能是`FireBorder`,这个类扩展了Java Swing的组件,如`JPanel`或`JFrame`,并实现了火焰边框的绘制逻辑。这个类可能包含以下关键部分: 1. **初始化...
JPanel panel = new JPanel() { @Override protected void paintComponent(Graphics g) { super.paintComponent(g); Graphics2D g2d = (Graphics2D) g; g2d.setColor(Color.BLACK); // 设置字体 Font font...
在实际应用中,可能还需要考虑其他因素,比如窗体的边框样式、背景颜色以及与其他组件的交互等。此外,为了确保跨平台的兼容性,可能需要寻找替代方案,例如使用JavaFX,它提供了更稳定且官方支持的透明效果实现。
Java中的`Border`类是Swing库的一部分,用于在组件(如JFrame、JPanel等)上添加边框。边框不仅可以提供视觉上的装饰,还可以帮助用户更好地理解UI的结构。`Border`接口由Java AWT和Swing库提供,它是所有边框类型的...
此外,头像通常会通过JLabel来展示,可以设置边框和背景色来区分。 事件处理是另一个关键点,如发送消息按钮的点击事件,这需要用到ActionListener接口。当用户输入消息并点击发送时,你需要读取文本框的内容,创建...
在Java编程领域,创建一个"java小球碰撞边框反弹并且互相碰撞消失"的游戏涉及到多个核心知识点,包括图形用户界面(GUI)设计、事件处理、物理运动模拟以及对象检测等。下面将逐一详解这些关键点。 1. **图形用户...
4. **边框与图标**:如果需要,可以添加边框(setBorder())或设置组件的图标(setIcon())。 5. **事件处理**:定义组件的事件监听器,如按钮点击事件(addActionListener())。 6. **布局管理**:将组件添加到...
本文将详细介绍如何正确地设置`JButton`的透明度,并解释为什么不应使用`setOpaque(false)`方法。 ### 一、为什么不能使用`setOpaque(false)`? `setOpaque(false)`方法主要用于改变一个Swing组件是否应该被渲染为...