0
我想通過setDraggable將我的自定義小部件製作爲可拖動。CodeName One中的可拖拽&可調整大小的容器
第1部分: 我的目標是創建一個包含其他組件(中心)的標題(北)的矩形容器。 如果我拖動標題,MyWidget應該被拖動。
public class MyWidget extends Container {
public MyWidget(String labelText) {
// Temp size. This will be removed after actual components
// are put into innerContainer
setPreferredH(100);
setPreferredW(400);
setLayout(new BorderLayout());
Label title = new Label(labelText);
addComponent(BorderLayout.NORTH, title);
Container innerContainer = new Container();
addComponent(BorderLayout.CENTER, innerContainer);
}
}
Container myWidget = new MyWidget("MyWidget");
myWidget.setDraggable(true);
setDraggable()效果很好,當我用了一個標籤,但我不能當我申請同樣的方法進myWidget拖動。
第2部分: 此外,普萊舍建議我怎麼能長按這個小工具可以調整大小。我的目標是在按長按&時爲容器提供可調整大小的指標邊緣,小工具進入調整大小模式。然後我通過拖動邊緣來調整組件大小。如果我在MyWidget外單擊,調整大小模式將結束。
PS:我注意到拖動正在發生'有時',當我點擊小部件的角落。
感謝您的幫助。 **第1部分:**解決方案使'title'接收所有事件。任何'innerContainer'組件(例如,一個'Button')都將無法接收事件。 請指導** **第2部分**。我是CN1的新寵兒。 –
覆蓋長按和標籤中拖動的指針(您可能需要使其可調焦)。當長按發生時激活一個模式,從而拖動指針將調整大小而不調用超級。 –