gpt4 book ai didi

java - 拖动并移动一组 JPanel 中的 JPanel

转载 作者:行者123 更新时间:2023-12-01 04:27:10 24 4
gpt4 key购买 nike

有一组 10 个 JPanel 放置在 GridLayout 中。现在我想拖动一个 JPanel(例如 panel1)并将其放置在另一个 JPanel(例如 panel2)上,并将 panel2 向左或向右移动,并将 panel1 放置在 panel2 位置。我可以使用拖动选项拖动 JPanel,但无法将其放在所需的位置。我需要一些帮助来将面板移动到放置位置。抱歉,如果我的问题不清楚。希望你能理解。提前致谢。

最佳答案

你可以尝试这个,但就像我说的,可能有更好的方法:

public JPanel getPanelColliding(JPanel dragPanel, JPanel[] panels)
{
Rectangle rDrag = dragPanel.getBounds();

for (JPanel panel : panels){
if (panel == dragPanel) continue;

Rectangle r = panel.getBounds();
if (r.insersects(rDrag))
return r;
}

return null;
}

然后在您的拖动监听器中,如果getPanelColliding()不为空,您可以调用它并交换面板位置。我没有对此进行测试,但它应该可以工作!

关于java - 拖动并移动一组 JPanel 中的 JPanel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18406486/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com