1

私のアプリケーションではJTextArea、パネルの特定の位置に描画する必要があり、ズームインおよびズームアウトできる必要があります。

配置には、絶対配置を使用できますが、スケーリングには課題があります。微調整することで簡単に縮小できますpaintComponent

@Override
public void paintComponent(Graphics g) {
    Graphics2D g2 = (Graphics2D) g;
    g2.scale(0.5,0.5);
    super.paintComponent(g2);
}

しかし、スケールアップは機能しませんsetBounds。明示的に使用してコンポーネントの境界を設定したため、拡大されたコンポーネントの一部が描画されなくなります。どうすれば解決できますか?

編集:少し説明。

私が維持しているアプリケーションは一種のグラフィックエディターであり、ユーザーがその作業領域にテキストを直接入力できるように、作業領域にメモのようなものを追加する機能を追加する必要があります。ほとんどのグラフィック エディターと同様に、作業領域は移動およびズームイン/アウトできるため、ユーザーがテキストを入力しているテキスト領域も移動およびスケーリングする必要があります。

4

1 に答える 1

2

拡大縮小したときにテキスト コンポーネントを編集可能な状態にしておく必要がある場合は、ここFontに示すように、拡大率に応じて (大まかな) 比率で拡大縮小することができます。

画像

于 2012-10-07T17:01:37.063 に答える