gpt4 book ai didi

java - 根据用户选择用 JScroll Pane 填充 JTabbed Pane

转载 作者:行者123 更新时间:2023-12-01 10:03:34 25 4
gpt4 key购买 nike

我们有一个大学项目,该项目旨在保存已完成类(class)作业的讲义和反馈。

我们想到的是将整个事情分解成更小的部分,例如:您的类(class)作业需要编写程序和结果报告等。因此,用户将通过选择“代码”和“报告”选项来创建新的类(class)作业,因为这是所需要的。然后我们需要在程序中创建相应的选项卡,以便用户可以输入所需的内容。

我已经创建了所有必要的表单和窗口,只是我不知道如何继续前进。a) 我应该把代码放在哪里?我应该在“创建”事件中使用它吗?b) 我该如何完成整个自定义人口的工作?

显然,我并不是在代码中要求全部内容。我什至不知道要读什么以及要搜索什么。

以下是一些用户界面的屏幕截图,可帮助解释我的意思。

新项目窗口 New project window

创建新项目后主窗口应该是什么样子。注意各个选项卡。 How the main window should be after creating a new projet. Notice the various tabs.

报告反馈表格 A form for report feedback

最佳答案

在“创建”按钮上单击检查 checkbox.isSelected() 并使用以下方法:

if(reportCheckbox.isSelected()){
addonScreen(new reportFrame(),"Report Submission");
addonScreen(new reportFeedbackFrame(),"Report Feedback");
}

使用桌面 Pane 作为容器...将选项卡式 Pane 添加到其中

public static JTabbedPane tabbedPane = new JTabbedPane();
jDesktopPane1.add(tabbedPane);

使用此方法在运行时向布局添加选项卡

public static void addOnScreen(JInternalFrame inFrame, String title) {
//border for the internal frame

javax.swing.plaf.InternalFrameUI ifu = inFrame.getUI();
((javax.swing.plaf.basic.BasicInternalFrameUI) ifu).setNorthPane(null);
Border b1 = new LineBorder(new Color(114, 139, 173), 3, true) {
};

tabbedPane.setBounds(0, 0, jDesktopPane1.getWidth(), jDesktopPane1.getHeight());
inFrame.setLocation(0, 0);
inFrame.setSize(jDesktopPane1.getWidth(), jDesktopPane1.getHeight());
inFrame.setBorder(b1);
JPanel jp = new JPanel();
jp.setLayout(new GridLayout());
jp.setOpaque(true);
jp.add(inFrame);
tabbedPane.addTab(title, jp);
tabbedPane.setSelectedComponent(jp);
inFrame.requestFocusInWindow();
inFrame.setVisible(true);
tabbedPane.setVisible(true);
}

关于java - 根据用户选择用 JScroll Pane 填充 JTabbed Pane,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36626990/

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