【问题标题】:Codename One square buttons代号一方形按钮
【发布时间】:2018-11-30 12:26:31
【问题描述】:

在 Codename One 中,我需要一个扩展 Button 的 MyButton 类。我希望每个 myButton 实例都是一个宽度和高度始终相等的 Button(它们的值的最大值)。

我知道每个 Component 都有 setWidth 和 setHeight 方法,但它们是用于布局的,我想我不应该直接使用它们。

我也知道我可以创建一个具有自定义布局的 Container,并在其中放置一个 Button……但在这种情况下,我不会扩展 Button 类。

我的问题是我是否可以扩展 Button 来创建方形按钮,或者如果使用带有自定义布局的 Container 是唯一的选择。

【问题讨论】:

    标签: codenameone


    【解决方案1】:

    您可以使用GridLayout,它为所有内容提供完全相同的宽度/高度,但我猜您正在寻找的是:

    Container.setSameSize(Component...);
    Container.setSameWidth(Component...);
    Container.setSameHeight(Component...);
    

    它是静态的,组件不需要在同一个容器中。通过返回集合中最大的首选宽度/高度,它们将获得相同的宽度/高度。

    【讨论】:

    • 我找到了另一种方法。我扩展了 Button 类,我重写了 calcPreferredSize() 方法,我使用了一个带有 FlowLayout 的封闭容器,它尊重首选大小。
    猜你喜欢
    • 1970-01-01
    • 2013-02-27
    • 1970-01-01
    • 2019-09-09
    • 1970-01-01
    • 1970-01-01
    • 2020-04-02
    • 2016-11-30
    • 1970-01-01
    相关资源
    最近更新 更多