Java图形程序设计(二)

本文深入介绍了在Java Swing中如何在组件上显示信息。主要内容包括:在内容窗格中绘制信息,创建自定义组件并覆盖`paintComponent`方法进行绘制,使用`Graphics`对象进行绘图操作,以及调整组件大小和位置。通过示例代码演示了如何创建一个能够绘制文本的组件,并在JFrame中展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

上篇博客探讨了关于“如何显示一个窗口”。那么这篇来探讨“绘制内容”的基础知识。

在组件中显示信息

在 Java 中,框架被设计为放置组件的容器,可以将菜单栏和其他的用户界面元素放置在其中。通常情况下,应该在另一组件上绘制信息,并将这个组件添加到框架中。

JFrame 有四层面板。其中的根面板、层级面板和玻璃面板人们并不关心;它们是用来组织菜单栏和内容窗格以及实现观感的。Swing 程序员最关心的是 内容窗格 (content pane)。

调用

frame.add(c);

直接将一个绘制消息的组件添加到框架中。

绘制一个组件,需要定义一个扩展于 JComponent 的类,并覆盖其中的 paintComponent 方法。PaintComponent 方法中有一个 Graphics 类型的参数,这个参数保存着用于绘制图像和文本的设置,例如,设置的字体或当前的颜色。在 Java 中,所有绘制都必须使用 Graphics 对象,其中包含了绘制图案、图像和文本的方法。

下面方法给出了如何创建一个能够进行绘制的组件:

class MyComponent extends JComponent {
   
   
    public void paintComponent(Graphics g) {
        code for drawing
    }
}

无论何种原因,只要窗口需要重新绘制(例如,用户在扩大窗口或极小化窗口后,又恢复窗口的大小时会引发重新绘图),事件处理器就会通告组件,从而引发执行所有组件的 paintComponent 方法。

一定不要自己调用 paintComponent 方法。在应用程序需要重新绘图时,这个方法将被自动地调用,不要人为地干预这个自动的处理过程。

从上述代码段中可以看到,paintComponent 方法只有一个 Graphics 类型的参数。对于屏幕显示来说,Graphics 对象的度量单位是像素。坐标 ( 0 , 0 ) 指出所绘制组件表面的左上角。

显示文本是一种特殊的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值