Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/377.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 更改flowlayout中JButton的重叠_Java_Swing_Jbutton_Layout Manager_Flowlayout - Fatal编程技术网

Java 更改flowlayout中JButton的重叠

Java 更改flowlayout中JButton的重叠,java,swing,jbutton,layout-manager,flowlayout,Java,Swing,Jbutton,Layout Manager,Flowlayout,如何重新绘制最右边的卡片最后一张,最左边的第一张,以使重叠反转 所以我在flowlayout中有一个JPanel,它包含JButtons。我想模仿手里拿着卡片的感觉,所以我重叠了JButtons。问题是JButtons图像的重叠使得数字只出现在右下角,我希望它们位于左上角。 这就是我现在拥有的: ZOrdering不起作用,它只是颠倒了牌的顺序(另一边是王牌,国王优先,等等)。我想要的是最后一张最右边的牌,然后第一张最左边的牌,这样重叠就会反转 编辑: 构造手的代码: hand= new JP

如何重新绘制最右边的卡片最后一张,最左边的第一张,以使重叠反转

所以我在flowlayout中有一个JPanel,它包含JButtons。我想模仿手里拿着卡片的感觉,所以我重叠了JButtons。问题是JButtons图像的重叠使得数字只出现在右下角,我希望它们位于左上角。 这就是我现在拥有的:

ZOrdering不起作用,它只是颠倒了牌的顺序(另一边是王牌,国王优先,等等)。我想要的是最后一张最右边的牌,然后第一张最左边的牌,这样重叠就会反转

编辑: 构造手的代码:

hand= new JPanel();
    hand.setLayout(new FlowLayout(FlowLayout.CENTER, -45, 0));
    hand.setOpaque(false);
    for(int i=0; i<p1.getHand().size(); i++){
        JButton te=new JButton();
        //button customization, icons and such
        te.addActionListener(this);
        //here I tried the ZOrdering that didn't work
        //hand.setComponentZOrder(te, 0)
        hand.add(te);
    }
    this.add(hand);
    }
    //yes, the setBounds is long and weird 
    hand.setBounds(WINDW/2-((p1.getHand().size())*CARDWHAND*2/5), WINDH-CARDHHAND-30, p1.getHand().size()*CARDWHAND*4/5+50, CARDHHAND+30);
hand=newjpanel();
手动设置布局(新的FlowLayout(FlowLayout.CENTER,-45,0));
手动设置不透明(假);
对于(int i=0;i请查看支持此功能的


您可能还希望使用JLabel而不是JButton来实现此目的。上面的链接将解释按钮的潜在问题,尽管我认为此问题仅在您使用按钮边框时才会发生。

1)为了更快获得更好的帮助,请发布(最小完整可验证示例)或(简短、自包含、正确的示例)。2) “所以我有一个…”问题?你的问题是什么?对不起,我在描述中没有明确的问题。我的问题是,我如何重新绘制最右边的卡片最后一张,最左边的第一张,这样重叠将反转?正如Andrew已经说过的,我们需要一个MCVE(即示例代码),我们可以使用它。请帮助我们帮助您阅读这些链接并按照其中的说明进行操作C:您是否尝试按相反的顺序添加卡片?顺便说一下,组件通常按照添加的顺序进行绘制(如果我没有记错的话)