问题
I'm writing MineSweeper and using JButton
s on a GridLayout
. The numbers of rows and columns are entered by the user, so setting fixed size may cause several problems.
How can I remove the space between the buttons without setting the fixed size of the panel?
回答1:
This seems to be more of a issue with JButton
then with GridLayout
Here, I replaced JButton
with JPanel
(and some border magic)
The other thing I tried was passing a negative h/vgap to the GridLayout
I'd however not recommend this, as it may have unforeseen effects on other platforms.
I personally, would be tempted to use a custom JLabel
(with it's own mouse listener attached) to take the place of the buttons. You could even fire and action event when it's clicked...
回答2:
You need to set the hgap and vgap to 0 when creating the gridlayout instance.
Like,
GridLayout myLayout = new GridLayout(0,2,0,0);
来源:https://stackoverflow.com/questions/13448535/jbuttons-on-gridlayout-minesweeper