view counter

Small NetBeans Visual Library Resize Sample

Thanks to Geertjan Wielenga for this story

When the mouse is moved over this widget, resize borders appear, and the widget can be resized:

view counter

When the mouse moves away from the widget, the resize borders disappear:

setLayout(new BorderLayout());

Scene scene = new Scene();

LayerWidget baseLayer = new LayerWidget(scene);

Widget widget = new Widget(scene);
widget.setBorder(BorderFactory.createLineBorder(1));
widget.setPreferredLocation(new Point(10, 20));
widget.setPreferredBounds(new Rectangle(30, 30));
widget.getActions().addAction(ActionFactory.createResizeAction());
widget.getActions().addAction(ActionFactory.createMoveAction());
WidgetAction hoverAction = ActionFactory.createHoverAction(new TwoStateHoverProvider() {
    @Override
    public void unsetHovering(Widget w) {
        w.setBorder(BorderFactory.createLineBorder(1));
    }
    @Override
    public void setHovering(Widget w) {
        w.setBorder(BorderFactory.createResizeBorder(8, Color.BLACK, false));
    }
});
widget.getActions().addAction(hoverAction);
scene.getActions().addAction(hoverAction);
baseLayer.addChild(widget);

scene.addChild(baseLayer);

add(scene.createView(), BorderLayout.CENTER);

Read the entire article at its source

view counter