gpt4 book ai didi

java - Swing:两个 JFrame 之间的干净过渡

转载 作者:行者123 更新时间:2023-12-01 06:19:37 25 4
gpt4 key购买 nike

不久前,我读到在应用程序中的不同“屏幕”之间切换的最佳方法是设置不同的 JFrame ,然后简单地放置第一个并调用第二个。例如,我有屏幕 A 扩展 JFrame 和屏幕 B 扩展 JFrame,在应该切换到下一个屏幕的按钮上我会写类似的内容

JButton button = new JButton("show next screen");
button.addActionListener(){
new ScreenB();
frameA.dispose(); // assumed that we coded something like frameA = this earlier
}

现在的问题是,在两个帧的切换之间,我看到屏幕 A 或屏幕 B 为 1/10,这非常难看。什么是更好的解决方案?将屏幕扩展为 Container 并将其设置为 ContentPane 以获得始终相同的 JFrame

最佳答案

尝试将 WindowListener 附加到 FrameA

在 Action 监听器中调用frameA.dipsose(),只要将frame设置为DISPOSE_ON_CLOSE,就会触发windowClosed事件在WindowListener中。

发生这种情况时,您现在可以打开新窗口。

关于java - Swing:两个 JFrame 之间的干净过渡,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12993790/

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