我正在尝试扩展一个类以最终制作一个自定义按钮。我在几个地方读到最好在层次结构上尽可能高地扩展(为了更好的多态性?),所以我试图扩展JComponent
:
import javax.swing.*;
import java.awt.*;
public class TestButton extends JComponent {
private static final long serialVersionUID = 1L;
public TestButton() {
super();
}
}
调用它的代码是:
b1 = new TestButton();
basePanel.add(b1,gbc); // (gbc is GridBagConstraints object)
问题是,我JComponent
的布局中没有显示。如果我将类扩展为JButton
,则表明没有问题。这是怎么回事?
更新:
仅供参考,这是一个菜鸟概念问题,显然我在这里远非精通。
这里有一张图片来描述。唯一改变的是extends ______
。
应该发生的是一个紫色填充的块,与底部的黄色块高度相同。
正在发生的是一个没有背景的默认大小的块(黑色来自 JFrame)。