setMaximumSize为什么不起作用

bluell 2010-09-25 01:08:10
初学JAVA,刚开始接触SWING,在学习JButton的时候遇到如下这样一个问题

import java.net.URL;
import javax.swing.;

public class JButtonTest extends JFrame {
private static final long serialVersionUID = 20100925L;

public JButtonTest() {
Container container = getContentPane();
setTitle(创建带文字与图片的按钮);
setSize(350, 200);
container.setLayout(new GridLayout(3, 2, 5, 5));
URL url = JButtonTest.class.getResource(imageButton.jpg);
Icon icon = new ImageIcon(url);
for (int i = 1; i = 5; i++) {
JButton jB1 = new JButton(button + i, icon);
container.add(jB1);
if (i % 2 != 0) {
jB1.setEnabled(false);
}
}
JButton jB2 = new JButton(icon);
jB2.setMaximumSize(new Dimension(90, 30)); //这里的setMaximumSize为什么不起作用?是因为前面的“container.setLayout(new GridLayout(3, 2, 5, 5));”的关系吗?
jB2.setToolTipText(图片按钮);
jB2.setBorderPainted(false);
jB2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent actionE) {
JOptionPane.showMessageDialog(null, 弹出对话框);
}
});
container.add(jB2);
setVisible(true);
setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
}

public static void main(String[] args) {
new JButtonTest();
}
}
...全文
606 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bluell 2010-09-27
  • 打赏
  • 举报
回复
能否讲得具体些?我还是不是很明白
huntor 2010-09-25
  • 打赏
  • 举报
回复
布局主要基于preferredsize
bluell 2010-09-25
  • 打赏
  • 举报
回复
呃,不是我没加引号,而是我复制代码过来后,自动引号就没了,不知为何,我也懒得改……

还有,这句话注释后大小当然是不一样大,因为默认是BORDER布局的,而我这里是网格布局的,但是setMaximumSize还是不起作用啊。。。。
24K純帥 2010-09-25
  • 打赏
  • 举报
回复
container.setLayout(new GridLayout(3, 2, 5, 5));这句话注释后大小是不一样大,LZ为什么你都不习惯加引号的,贴的代码好多错

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧