Windows 7中的Java 2D图形线条绘制

时间:2011-03-22 07:37:45

标签: java swing

使用jdk1.6更新24。

我正面临关于Windows 7中的线条绘制的问题。在我的项目中,我在面板中有三个组件。例如,三个面板,线从一个面板的中间开始并以其边框结束,第二个面板从该线的结束坐标开始绘制线条并在该面板端完成。第三个面板以此终点的坐标开始。

因此,在整个结构中,整个结构将是连续的(不必是直的)线。 在Windows XP中它的工作正常并且没有问题,但是窗口7的坐标不匹配,因此线条从其连续性中分离出来(即一个面板末端的坐标与下一个面板行的坐标不匹配)。

我是混淆它的问题是操作系统或API还是编码标准的任何问题。此问题发生在平台相关但我使用带有重写渲染器的swing组件。如何解决这个问题?

对渲染器依赖平台有疑问,因为项目特定已被覆盖。如何编写独立于平台的渲染器?

提前致谢..

1 个答案:

答案 0 :(得分:0)

看看你是否可以使用JPanels的大小和位置创建某种“全局坐标系”。看一下JComponent doc的这一部分:http://download.oracle.com/javase/1.4.2/docs/api/javax/swing/JComponent.html#getX%28%29。这样,您应该能够找到相对于彼此的面板的位置和大小。 paint()函数中的代码也会有所帮助。