-1
サイズ変更可能なJavaスイングコンポーネント(JPanel)を作成する必要があるため、そのコンポーネントの境界線をクリックしてカーソルをドラッグして他の場所にドラッグすると、コンポーネントはマウス位置によってサイズが変更されます。これは簡単な解決策ですか?UIからのJavaスイングコンポーネントのサイズ変更
サイズ変更可能なJavaスイングコンポーネント(JPanel)を作成する必要があるため、そのコンポーネントの境界線をクリックしてカーソルをドラッグして他の場所にドラッグすると、コンポーネントはマウス位置によってサイズが変更されます。これは簡単な解決策ですか?UIからのJavaスイングコンポーネントのサイズ変更
コンポーネントにMouseListener
を添付し、ボーダーとして定義したものがマウスで押されたかどうかを確認した後、マウスを押したメソッドのドラッグ開始時にマウスの位置を記録し、マウスの解放メソッドでコンポーネントのサイズを変更するドラッグの開始時と終了時にマウスの位置を減算します。
ドラッグ中に連続的なサイズ変更が必要な場合は、代わりにMouseInputListener
を使用し、マウスの押したメソッドでコンポーネントのサイズを記録し、マウス移動メソッドでサイズ変更を行います。
ボーダーも表示したい場合は、そのボーダーをコンポーネントに追加して、ボーダーにマウスリスナーを追加して、押されたイベントを取得したときにボーダーにいることを知ることができます。
[コンポーネントのサイズ変更](https://tips4java.wordpress.com/2009/09/13/resizing-components/)を参照してください。 – camickr