问题标签 [jpanel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
6082 浏览

java - 调整 JPanel 的大小以准备打印,而无需将其从原始位置移除

在我的程序中,我经常需要打印各种 JComponent(通常是 JPanel),并且我喜欢它们是整页的。我现在的方法是使用以下代码:

但这通常会拉伸或以其他方式使我尝试打印的任何内容变形,而且我更愿意做一些智能调整大小的事情,也许是以下功能的版本:

或者说将组件添加到新的 JFrame 中,然后设置框架大小(问题是组件不能同时存在于两个地方)。我不在乎调整大小是否会使 GUI 的其余部分看起来很糟糕,只要它是可以轻松重置的东西。

有没有办法做到这一点?

0 投票
1 回答
1184 浏览

java - 嵌套 JPanel 调整大小问题

我有两个 JPanel(我们称它们为 Panel1 和 Panel2)。这些面板的宽度相同,但高度不同。

我想将这些 JPanel 放入一个大 JPanel(我们称之为 Panel0),并将它们堆叠在一起(我决定将 Panel0 的布局设置为 GridLayout(0,1))。

问题在于,两个嵌套面板(面板 1 和 2)最终都具有相同的尺寸(两者之间最大的尺寸),而不是我为它们设置的 setPreferredDimension 和 setDimension。

抱歉,我真的无法提供任何代码(面板中添加了很多废话,而且都是与工作相关的)。有什么建议吗?谢谢!

0 投票
4 回答
14990 浏览

java - 如何从使用 BorderLayout 的 JFrame 中删除组件

容器使用 BorderLayout。我有一个添加到 CENTER 的 JPanel。但是 JPanel 没有变量名。

我可以做 contents.remove(nameofPanel)

但是因为我像这样添加它 contents.add(new CustomJPanel(), BorderLayout.CENTER);

现在我正在尝试删除当前的 CustomJPanel 并添加一个新的。

我该怎么做呢?

0 投票
5 回答
118801 浏览

java - 在 JPanel 上显示 jpg 图像

在 JPanel 上显示 jpg 图像(从本地文件夹加载)最合适的图像类型是什么?

干杯。

0 投票
1 回答
537 浏览

java - JTabbedPane 添加空组件

谜语:我有一个 JTabbedPane,里面有自定义的 JPanel。当我尝试访问这些 JPanel 时,我得到的只是空值。我知道面板已添加,因为在 UI 上我可以看到选项卡。我还可以与面板交互并在选项卡之间切换。我如何添加这些 JPanel 并不重要,它总是返回 null。

现在我可以只保留 JPanels 的 ArrayList 以供处理,但我认为这会有点违背 JTabbedPane 保留任何类型的模型的目的。

有谁知道这是怎么回事?

0 投票
3 回答
8416 浏览

java - 绘制 JPanel 并将 JPanel 添加到 JFrame

我需要通过覆盖 JPanel 的 paintComponent() 方法在 JPanel 上绘制图形。

当我在 JFrame 上拖放 JPanel 时使用 netbeans 设计 gui 时,它通过创建私有变量 JPanel 对象来生成代码。在这种情况下,我如何覆盖它的方法来绘制它......

或者,如果我通过扩展 JPanel 为类编写代码并覆盖绘制它的方法,我必须创建一个新的 JFrame 并将 JPanel 添加到它。

JFrame fr=new JFrame(); fr.add(窗格); //pane 是扩展 JPanel 的类的对象,我在其中绘制 fr.setVisible(true);

在这种情况下它有效..

但是,如果我得到自动创建的类的引用,该类通过 netbeans 扩展 JFrame 并使用它使用引用的 add 方法添加 JPanel,那么它就不起作用了......

它没有显示错误,但是当我运行程序时,只有 Jframe 可见.. JPanel 没有显示...

如果问题很愚蠢,请原谅我..我是初学者..

提前致谢...

0 投票
4 回答
29715 浏览

java - 将 JPanel 转换为图像

有没有办法将 JPanel(尚未显示)转换为 BufferedImage?

谢谢,

杰夫

0 投票
5 回答
58350 浏览

java - 可滚动的 JPanel

如何使 JPanel 可滚动?当我将它添加到包含面板时,我实现了可滚动界面

没有任何作用

代码:

0 投票
1 回答
14028 浏览

java - 如何使 java JPanel 和 graphics2d 透明?

好吧,标题是不言自明的。我想使用java在层中构建两个面板,一个在彼此之上。我希望顶层包含一个 JPanel,它将包含一个 graphics2d 对象。我希望 JPanel 和 graphics2d 都具有透明背景(我仍然希望 graphics2d 绘制的内容可见)。有谁知道如何做到这一点?

0 投票
4 回答
8528 浏览

java - Java 的 setPreferredSize 不会调整 JPanel 的大小

我在 Java GUI 开发中苦苦挣扎(!)。所有这些明显有意义的小事情都行不通。我将解释我正在尝试做什么以及我失败的地方(这非常令人沮丧):

我有这个位于面板内的 graphics2d 对象。现在这个图形绘制了一个图像,它可以一直画下去。这张图扩展得非常可怕,因为我不知道预期的尺寸是多少,所以我把它放在了一个滚动窗格中。现在我想在每次疼痛迭代中调整 JPanel 的大小并将 setPreferredSize 设置为更大的值,从而扩展滚动窗格的旋钮。

问题:由于某种原因,当我从绘画中调用 setPreferredSize 时,它​​什么也没做。我在面板上调用它。当我尝试从调用paint的函数中调用setPreferredSize时,它只执行一次调整大小操作!

这可能是什么原因?

除此之外,我还有另一个小问题,我很想解决:由于图形绘制继续并随着时间的推移而增加,我怎样才能提高滚动窗格的位置?逐渐增加吗?

各位,非常感谢。我在这里确实需要帮助