jjzjj

java - 在现有的 JPanels 上绘制 JLayeredPane

我正在开发一款国际象棋游戏。我想让板容器利用GridLayout来显示8x8的JPanel网格。(这将使诸如突出显示所选方block和有效移动等功能变得更加容易。)然后我想在该层上添加棋子,以便可以拖放它们。我最初通过在单独的方形JPanel中绘制来显示这些片段,但我认为稍后尝试拖放它们时会出现问题。从那以后,我一直在尝试使用JLayeredPane作为主容器,但遇到了几个问题。一个是,一旦我为JLayeredPane指定了GridLayout,无论我使用哪个Integer来指定要将JLabel或其他类型的图像添加到的图层,这些片段都会添加到网格中,从而设置它们的位置并扭曲了整个棋盘。

java - JPanels 不会完全拉伸(stretch)以占据可用空间

我有一个面板,我在其中并排放置了几个尺寸和颜色不同的迷你面板,它们应该占据整个父面板(​​水平)。为此,我使用BorderLayout(用于父面板),并使用BoxLayout用于放置所有迷你面板的子面板(参见下面的代码)。它确实可以正常工作并且在调整大小和一切时都能正常运行。然而,随着迷你面板数量的增加,一个奇怪的行为发生了:父面板的末尾出现了空白。我想我发现这是布局管理器中的一个拉伸(stretch)错误,因为为了拉伸(stretch)面板,布局管理器会尝试向每个迷你面板添加一个像素。但是,当mini-panel的数量很大时,为每个mini-panel添加一个像素将导致添加许多像素并

java - 使用动画调整 jPanels 的大小

我正在开发一个带有全屏面板的应用程序,有时我需要在屏幕右侧显示第二个面板。为了开发它,我使用AbsoluteLayout(来自NetBeans)制作了一个包含另外两个面板的jPanel。我计算每个面板相对于屏幕分辨率的位置和大小。基本上,我有两个“状态”。首先,jPanel1的宽度=100%,而jPanel2的宽度=0%(所以我没有显示此面板)。第二种状态,当jPanel1的宽度=75%并且jPanel2的宽度=25%时。为了进行这些转换,我只重新计算每个面板的大小并且效果很好,但我希望使用单个动画来完成。随着jPanel2“滑入”屏幕。下图解释一下:Linktoimage我尝试了一些

Java滑动JPanels

我有一个显示各种按钮的菜单,我可以让这些按钮在单击时调用它们各自的JPanel。问题是我想让Jpanel在调用时滑入而不是瞬间弹出。我尝试使用补间引擎,作为Java初学者,我发现它真的让人不知所措,所以我决定使用定时动画。我能够使顶部的Jpanel滑动到一侧,但由于某种原因下一个面板不想显示,我真的很累,有人可以帮忙吗!代码如下:publicclassListenerimplementsActionListener{@OverridepublicvoidactionPerformed(ActionEvente){newTimer(0,newActionListener(){public

Java - 控制JPanels的Z顺序

简而言之,我的需求是在我的java应用程序中有一个背景图像,并且在某些情况下,在该图像之上创建一些其他图形。我想我会使用JPanel来绘制背景图像,在程序开始时将其添加到我的JFrame,然后在发生某些事件时在其之上添加其他JPanel。问题是Swing为首先添加的JPanel提供了最高的Z索引,所以我的背景应该显示在所有内容之上。有什么方法可以控制JPanel的Z索引/顺序,还是我这样做完全错了? 最佳答案 您可以使用setComponentZOrder()来处理应用程序中的Z顺序。资源:JavaDoc-Container.set

java - 带有 GridLayout JFrame 的 JPanels 中的 JButtons

我有一个设置为NxN大小的GridLayout的JFrame。N由用户在程序开始时作为命令行给出。NxN模式中的JButton被添加到JPanel中的窗口,由GridLayout设置位置(我认为)。是否每个JButton都需要自己的JPanel才能使用GridLayout?我的印象是您可以只为所有按钮设置一个JPanel,并将JPanel设置为JButton的GridLayout。我想在按钮数组的左侧添加另一个JPanel以显示按钮点击(JLabel)和同一个左侧JPanel中的重置按钮。这是我的(一小部分)代码,其中N由用户提供,system是我的后台进程类,ButtonEvent是

为什么布局样式应用于我的所有jpanels?

我给自己一个关于重学习爪哇的速成课程。我正在编写一个非常简单的程序,当您单击随机面板时,它可以简单地更改按钮的位置。没有真正的问题,我几乎完成了我想要的程序。但是,我想知道为什么当我将布局样式应用于第一个面板(ButtonPanel1)时,它会自动应用于每个面板?/**Tochangethislicenseheader,chooseLicenseHeadersinProjectProperties.*Tochangethistemplatefile,chooseTools|Templates*andopenthetemplateintheeditor.*/packagebuttonswitch