我的java程序已经有了一个画布,我计划在画布上添加4个带有MouseListener的组件,作为4个按钮。当然,4个“按钮”会有不同的反应。
我可以只为这4个组件创建一个类(我不知道怎么做),或者我必须为4个组件定义4个类(这更容易)?
发布于 2013-05-04 14:28:05
MouseEvent扩展了具有getSource()方法的EventObject。
另外,最好给按钮添加一个ActionListener,因为它不仅会对鼠标做出反应,还会对键盘做出反应。
发布于 2013-05-05 13:43:32
public class ciCanvas extends Container
{
public void paint()
{
// I draw an image here, it works perfectly
Image MainMenuPlayBtImage =
Toolkit.getDefaultToolkit().getImage(ciConfig.CI_BT1_PATH) ;
Label MainMenuPlayText = new Label(ciConfig.CI_TEXT_PLAYBT) ;
Point MainMenuPlayLocation = new Point(100, 100) ;
ciTitle MainMenuBt = new ciTitle(MainMenuPlayText, MainMenuPlayBtImage, MainMenuPlayLocation) ;
this.add(MainMenuBt) ;
}
}ciTitle扩展了组件,下面4行代码旨在将组件添加到此容器中
我希望这将显示ciTitle组件,但没有显示任何内容,请注意,我还为ciTitle.paint()方法实现了代码(见下文)
public void paint(Graphics _GraphicsDev)
{
setSize(
this.ciTitleImage.getWidth(this),
this.ciTitleImage.getHeight(this));
_GraphicsDev.drawImage(
this.ciTitleImage,
this.ciTitleLocation.x,
this.ciTitleLocation.y,
this) ;
}仍然有一些代码在这里没有定义,但我希望这些代码足以描述问题
https://stackoverflow.com/questions/16371206
复制相似问题