gpt4 book ai didi

Java Graphics2D、JPanel、JScrollPane

转载 作者:行者123 更新时间:2023-12-02 06:04:32 25 4
gpt4 key购买 nike

我现在正在处理一个项目,但找不到解决我的问题的方法。

所以这是我的问题:我有一个 JFrame,然后添加一个容器 JPanel,然后向此容器面板添加另外 2 个 JPanel,第一个面板(InputPanel)用于用户输入,第二个面板(Board)用于显示根据用户输入指定算法。

但是显示的算法太大,所以我想在 DisplayPanel 中添加一个 JScrollPane,但是它并没有像我想象的那样工作。这是一张图片,红色矩形是我添加JScollPane后发生变化的区域:enter image description here

请注意,在我的 Board 类中,我重写了 PaintComponent(Graphics g) 来绘制算法。

我在主框架中的代码:

    container = new JPanel();
container.setLayout(new BorderLayout());

board = new Board();
container.add(board, BorderLayout.CENTER);

inputPanel = new InputPanel(board);
container.add(inputPanel, BorderLayout.SOUTH);

pane = new JScrollPane(board);
pane.setViewportView(board);
pane.setPreferredSize(new Dimension(700, 0));
container.add(pane, BorderLayout.WEST);

add(container);

我最初的计划是向 Board 面板添加一个水平滚动 Pane 。有人可以发布示例代码,或者指出我的问题吗?

最佳答案

您将板两次添加到容器中。将 JScrollPane 添加到容器的中心,然后继续将 board 传递给 JScrollPane 的构造函数。如果您想通过 JScrollPane 添加板,请勿将板单独添加到容器中。

关于Java Graphics2D、JPanel、JScrollPane,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22407493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com