java核心技术10阅读(十一)-swing图形

JFrame
在 Java 中,框架被设计为放置组件的容器, 可以将菜单栏和其他的用户界面元素放置在其中。在通常情 况下,应该在另一组件上绘制信息,并将这个组件添加到框 架中。
JFrame 是极少数几个不绘制在画布上的 Swing组件之一。
所有的 Swing组件必须由事件分派线程(event dispatch thread ) 进行配置,线程将 鼠标点击和按键控制转移到用户接口组件。
调用Toolkit类的静态方法 getDefaultToolkit 得到一个 Toolkit 对象(Toolkit 类包含很多与本地窗口系统打交道的方法)。然后,调用 getScreenSize方法,这个方法以 Dimension对象的形式返回屏幕的大小。Dimension对象同时 用公有实例变量 width 和 height 保存着屏幕的宽度和高度。

Toolkit kit = Toolkit
Dimension screenSize = Kit.getDefaultToolkit() ;
int screenWidth = screenSize Dimension screenSize - kit,getScreenSizeQ;
int screenHeight = screenSize.height;

在 Java中,所有的绘制都必须使用Graphics对 象,其中包含了绘制图案、图像和文本的方法。无论何种原因,只要窗口需要重新绘图,事件处理器就会通告组件,从而引发执行所有组件的 paintComponent 方法。

如果需要强制刷新屏幕,就需要调用 repaint 方法,而不是 paintComponent 方法。 它将引发采用相应配置的 Graphics 对象调用所有组件的 paintComponent 方法
2D图形
在这里插入图片描述
每个类包含Double 和 Float 子类,使用Float时更节省内存空间
使用颜色
使用 Graphics2D类的 setPaint 方法可以为图形环境上的所有后续的绘制操作选择颜色。java.awt.Color 类中提供了 13 个预定义的常量,也可以提供红、绿和蓝三色成分来创建一个 Color 对象,以达到定制颜色的目的。
字体
在这里插入图片描述
getStringBounds方法返回的矩形宽度是字符串水平方向的宽度。矩形的高度是上坡度、
下坡度、行间距的总和。

相对路径是相对user.dir这个目录而言,就是你启动Java程序时的目录,在eclipse里就是项目的根目录。

可以使用ClassLoader的getResource方法。
new ImageIcon(getClass().getClassLoader().getResource("/images/log.jpg"));

发布了15 篇原创文章 · 获赞 1 · 访问量 126

猜你喜欢

转载自blog.csdn.net/qq_17236715/article/details/105117494