有没有办法改变 Button.addActionListener 的行为?

Posted

技术标签:

【中文标题】有没有办法改变 Button.addActionListener 的行为?【英文标题】:Is there a way to change the Button.addActionListener behaviour? 【发布时间】:2022-01-21 05:59:04 【问题描述】:

如果我在按钮上使用 .addActionListener,按钮会触发“onRelease”操作。有没有一种简单的方法可以将该行为更改为“onPress”?

我通过覆盖 pointerPressed 方法找到了解决方法。这适用于我想要实现的目标,但这是正确的方法吗?

Button button1 = new Button("LEFT")
            @Override
            public void pointerPressed(int x, int y)                                       
                super.pointerPress(x, y);
                m.play();               
                showLeftForm();             
            
        ;

【问题讨论】:

【参考方案1】:

所有框架都会在发布时触发而不是在新闻发布时触发。

如果您执行后者,则发布事件将在您转换到新表单时触发,并可能导致问题。例如。屏幕转换期间的repaint() 可能会导致某些操作系统/转换组合等出现伪影。

话虽如此,您可以根据需要使用指针按下侦听器,尽管我不建议这样做。

【讨论】:

以上是关于有没有办法改变 Button.addActionListener 的行为?的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法改变 UICollectionView 的动画速度?

有没有办法改变页面指示点颜色

有没有办法改变超网格中单个单元格的背景?

有没有办法改变 Button.addActionListener 的行为?

有没有办法改变 MatplotLib 中 sublopts 的大小?

有没有办法改变ggplot2中图例项之间的间距?