Java AWT-旋转整个回转面板

Java AWT-旋转整个回转面板,java,swing,awt,java-2d,graphics2d,Java,Swing,Awt,Java 2d,Graphics2d,我在将面板中的图形旋转90度时遇到AWT问题。 我可以通过转换为Graphics2D并应用变换来旋转面板中的图形。 问题在于,如果面板区域为矩形,则部分图形将隐藏。我似乎无法为整个区域设置剪辑边界。 例如,如果窗口短而宽,则剪辑区域将变窄而高。如果窗口窄而高,剪辑区域将变短而宽。我不知道如何改变这种行为 有没有更好的方法来解决这个问题 编辑已解决:-事实证明,覆盖getWidth()和getHeight()的行为是一个坏主意lol如图所示,在封闭面板上覆盖getPreferredSize()以返

我在将面板中的图形旋转90度时遇到AWT问题。 我可以通过转换为Graphics2D并应用变换来旋转面板中的图形。 问题在于,如果面板区域为矩形,则部分图形将隐藏。我似乎无法为整个区域设置剪辑边界。 例如,如果窗口短而宽,则剪辑区域将变窄而高。如果窗口窄而高,剪辑区域将变短而宽。我不知道如何改变这种行为

有没有更好的方法来解决这个问题

编辑已解决:-事实证明,覆盖getWidth()和getHeight()的行为是一个坏主意lol

如图所示,在封闭面板上覆盖
getPreferredSize()
以返回可容纳所需视图的
维度,例如
Math.max(宽度、长度)
。如图所示

  • 将图像转换为原点

  • 旋转图像

  • 将图像转换回面板的中心


要更快地获得更好的帮助,请发布一个。在您的中,通过
URL
访问发布的图像,如图所示;如图所示使用合成图像;或者使用
UIManager
图标,如图所示。