Java JinternalFrame设计问题
我开始创建swing java应用程序,并在其中使用JInternalFrame,突然,我注意到JInternalFrame中的这个设计问题:Java JinternalFrame设计问题,java,swing,jinternalframe,Java,Swing,Jinternalframe,我开始创建swing java应用程序,并在其中使用JInternalFrame,突然,我注意到JInternalFrame中的这个设计问题: 这是一个设计缺陷还是什么 有解决办法吗? 这是我的代码: import javax.swing.JFrame; import javax.swing.JInternalFrame; import javax.swing.JDesktopPane; import java.awt.BorderLayout; import java.awt.Color;
这是一个设计缺陷还是什么
有解决办法吗? 这是我的代码:
import javax.swing.JFrame;
import javax.swing.JInternalFrame;
import javax.swing.JDesktopPane;
import java.awt.BorderLayout;
import java.awt.Color;
import javax.swing.JPanel;
import javax.swing.UIManager;
import javax.swing.UnsupportedLookAndFeelException;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
public class TestJInternalFrame extends JFrame {
public TestJInternalFrame() {
JDesktopPane desktopPane = new JDesktopPane();
desktopPane.setBackground(Color.LIGHT_GRAY);
getContentPane().add(desktopPane, BorderLayout.CENTER);
desktopPane.setLayout(null);
JPanel panel = new JPanel();
getContentPane().add(panel, BorderLayout.NORTH);
JButton btnOpenInternalframe = new JButton("Open InternalFrame");
btnOpenInternalframe.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
JInternalFrame f = new JInternalFrame("Test", false, true, false);
f.setBounds(250, 50, 300, 200);
desktopPane.add(f);
f.show();
}
});
panel.add(btnOpenInternalframe);
setBounds(100, 50, 700, 600);
setVisible(true);
}
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (UnsupportedLookAndFeelException e) {
e.printStackTrace();
}
new TestJInternalFrame();
}
}
你应该包括生成框架的代码,以帮助你找到问题。我调用JInternalFrame时没有代码,我得到了这个设计,没有什么特别的。
我调用JInternalFrame时没有代码,我得到了这个设计,没有什么特别的
-然后发布你的说明问题的文章。当我在上运行Swing教程中的代码时,我的内部框架看起来不像这样。试试那个演示代码,看看你是否有同样的问题。@camickr请看一下图片,我的问题不在于代码,而在于设计。上面的internalFrame来自Java,socond一个来自C#,正如你所看到的,Java internalFrame中的close按钮没有放置。我的问题是:这是不是某种糟糕的设计?@SlimenTunis,我已经说过我没有和你一样的问题。因此,问题在于您的代码或JDK。图片没有告诉我们您正在使用的代码。阅读我的评论,看看教程。您将看到按钮正确地放置在教程代码中。如果您没有发布您使用的代码,那么我们无法验证问题是您的代码还是您的平台。