【问题标题】:Button extending CssLayout does not fire click event reliably扩展 CssLayout 的按钮不会可靠地触发点击事件
【发布时间】:2018-02-02 11:31:10
【问题描述】:

我的 Vaadin Web 应用程序使用从 CssLayout 扩展而来的自定义按钮。 点击监听器被添加到带有addLayoutClickListener 的布局/按钮中。

通常当点击布局/按钮时,不会触发任何事件。

似乎只有当鼠标在按下和释放之间根本没有移动时才会触发该事件。传统的 UI 按钮允许鼠标在按下和释放之间移动,只要在释放期间指针仍在按钮区域内(“按下并武装”状态)。

我一定要使用com.vaadin.ui.Buttoncom.vaadin.ui.NativeButton吗?

有人可以解释一下为什么布局方法不能可靠地工作吗?

【问题讨论】:

  • 也许您的 Layout 中有一些组件可以捕获部分点击?
  • 您不使用 Vaadin 的Button 的原因是什么?或者,您可以尝试将自己的按钮实现为自定义小部件(如果您需要,我可以给您一些关于 HOWTO 的指示)。
  • @SteffenHarbich 最初的原因是我无法在合理的时间内自定义默认按钮的样式(Valo 主题对我来说太复杂了)。不过,这个点击问题可能会迫使我再试一次。
  • @AndréSchild 正好有一个 Label 添加到 CssLayout,包含按钮文本。
  • 如果您解释确切的样式问题,我可能会抽出时间来帮助您。

标签: javascript gwt vaadin vaadin8


【解决方案1】:

我无法在合理的时间内自定义默认按钮的样式(Valo 主题对我来说太复杂了)

使用button.setPrimaryStyleName("my-button"),您将拥有一片空白来应用自己的 CSS。

【讨论】:

    猜你喜欢
    • 2023-03-13
    • 1970-01-01
    • 2012-01-19
    • 1970-01-01
    • 2016-07-01
    • 1970-01-01
    • 2016-04-25
    • 2012-09-12
    • 2019-06-22
    相关资源
    最近更新 更多