【问题标题】:GWT resizable DialogBoxGWT 可调整大小的对话框
【发布时间】:2023-04-01 19:40:02
【问题描述】:

据我了解,默认情况下 DialogBox 在 GWT 中是不可重新调整的(甚至没有实现)。通过调整大小,我的意思是单击 DialogBox 的边缘并将其拖得更大。 我在网上看到了一些自定义的可调整大小的面板,但没有看到 DialogBox。我对如何制作可调整大小的对话框有一些想法,只是不想重新发明轮子。也许有人知道可调整大小的 DialogBox 的实现并可以将我链接到源代码?

【问题讨论】:

    标签: gwt dialog


    【解决方案1】:

    我做了这样的事情,它只是在右下角添加了一个红色框,然后您可以将鼠标处理程序添加到该红色框以调整大小。

    public class ThumbnailDialog extends DialogBox {
    
      private FocusPanel tab = new FocusPanel();
    
      public ThumbnailDialog() {
        super(false, false);    
        tab.setPixelSize(4, 4);
        tab.getElement().getStyle().setBackgroundColor("red");
        tab.getElement().getStyle().setPosition(Style.Position.ABSOLUTE);
        tab.getElement().getStyle().setRight(0, Style.Unit.PX);
        tab.getElement().getStyle().setBottom(0, Style.Unit.PX);
    
        Element tabElement = getCellElement(2, 2);
        tabElement.getStyle().setOverflow(Style.Overflow.VISIBLE);
        tabElement.appendChild(tab.getElement());
      }
    }
    

    【讨论】:

      【解决方案2】:

      好的,经过一些研究,我得出一个结论,由于 DialogBox 的构造,它无法完成。至少它不能在不丢失 DialogBox 默认行为的情况下完成。所有鼠标事件都必须被覆盖。如果我覆盖所有事件,我可以放松默认行为,以防 Google 将来更改某些内容。 DialogBox 标题不与 DialogBox 本身分开。在所有鼠标事件中,DialogBox 检查发送者是否是 Caption,如果不是,它会吞下鼠标事件。这样 DialogBox 在屏幕上移动。

      【讨论】:

        猜你喜欢
        • 2013-09-05
        • 2013-08-17
        • 1970-01-01
        • 1970-01-01
        • 2017-08-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多