JDialog和JPanel不打开它们设置的大小,也不显示它们的标签



在我的Netbeans代码中,我有jpanel和JDialog,它们有时会让我发疯。这些容器上的一些控制器决定不显示或自动更改大小,即使我已经在代码中并通过使用IDE属性设置了它们的大小和内容。例如,我的某些JPanel上的jbutton不显示其文本标签,或者我的一些文本字段的大小发生了变化。

任何解决方案,这将是非常感激!

当您使用NetBeans IDE向导创建GUI时,JPanel和JFrame附带的布局管理器是GroupLayout,它按预期工作。它保持你的JPanel和JFrame的大小如你所指定的。

现在,如果你改变了JPanel或JFrame的LayoutManager,那么你就只能靠自己了。您必须知道更改LayoutManager的后果,并更新/添加所需的代码以使代码按预期运行。

如果您想获得在NetBeans组件设计器中看到的效果,我建议您将默认的LayoutManager保留为GroupLayout。

不幸的是,您没有提供任何可以显示您的问题的代码片段。但是让我假设你对布局行为感到困惑。通常,我们使用布局管理器,并委托给它放置和调整图形元素大小的责任。布局管理器在父元素被绘制时工作,即在执行方法paint()时异步发生,可能由各种事件(例如改变焦点,重新调整窗口大小等)引起。

在这种情况下,通过调用其setSize()来更改特定元素大小的所有尝试都可能被布局管理器覆盖,布局管理器决定以不同的方式更改相同元素的大小。

所以,如果我的假设是正确的,学会使用布局管理器,如果你有任何困难,问更具体的问题。

相关内容

  • 没有找到相关文章

最新更新