2010-11-19 4 views
1

SwingComponent.wrap(myComponent)で取得できるラップされたスイングコンポーネントをサイズ変更(および一般的に変換)できることを読んでいます。私はどうしてか分からない。返されるタイプはサイズ変更可能を継承していますが、min/maxHeight、h/vfillなどのプロパティを設定するにはどうすればよいですか?javafxのラップされたスイングコンポーネントのサイズ変更

答えて

0

これは最適な解決策ではありませんが、機能します。

以下

// Define the swing component, wrapper, and the scene. 
var jPanel = new JPanel(); 
var swingWrapper = new SwingComponent.wrap(jPanel); 
var scene = Scene{ 
    width: 700 
    height: 500 
    content: [ 
      swingWrapper 
    ] 
} 

// Below are some triggers that fire off whenever the width or 
// height of the scene change. 
var currentWidth = bind scene.width on replace{ 
    jPanel.setPreferredSize(new Dimension(scene.width, 
     scene.height)); 
    swingWrapper.width = scene.width; 
} 

var currentHeight = bind scene.height on replace{ 
    jPanel.setPreferredSize(new Dimension(scene.width, 
     scene.height)); 
    swingWrapper.height = scene.height; 
} 


Stage { 
    title: "Some App" 
    scene: scene 
} 

0

はあなたが必要とするプロパティを設定することができる方法の一例である:助け


def swingComponent : SwingComponent = SwingComponent.wrap(new JPanel()); 

function setSwingComponentLayoutInfo():Void{ 
    swingComponent.layoutInfo = LayoutInfo{ 
     height: 200 
     width: 200 
     maxHeight: 400 
     maxWidth: 400 
     // ... other properties. 
    } 
} 

setSwingComponentLayoutInfo(); 

希望以下のサンプルコードです。

関連する問題