gpt4 book ai didi

java - 我如何将 CtabFolder 放置在 SWT 中的另一个 CTabfolder 中

转载 作者:行者123 更新时间:2023-12-01 13:20:27 25 4
gpt4 key购买 nike

请帮助我,我是 SWT 的初学者。我想将 CTabFolder 放置在另一个 CTabFolder 中。我尝试了以下代码,但它不完整。

import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.custom.SashForm;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.swt.widgets.Text;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CTabFolder;
import org.eclipse.swt.custom.CTabItem;
import org.eclipse.swt.events.*;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.layout.*;
import org.eclipse.swt.widgets.*;
import sun.awt.HorizBagLayout;

public class LayoutExample2
{

public static void main(String[] args) {

Display display=new Display();
Shell shell=new Shell(display);
shell.setLayout(new GridLayout());

CTabFolder ctf_main=new CTabFolder(shell,SWT.RIGHT_TO_LEFT);
CTabItem ctb1=new CTabItem(ctf_main,SWT.NONE);
ctf_main.setSimple(false);
ctf_main.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, false));
ctf_main.pack();
ctb1.setText("Error Management Portal ");

CTabFolder ctf_inner=new CTabFolder(ctf_main,SWT.RIGHT_TO_LEFT);
CTabItem tbi1=new CTabItem(ctf_main,SWT.FLAT);
tbi1.setText("Search ");


shell.setMaximized(true);
shell.pack();
shell.open();

while (!shell.isDisposed()) {
if (!display.readAndDispatch()) {
display.sleep();
}
}
display.dispose();
}
}

请帮我将一个 Ctabfolder 放入另一个 Ctabfolder...

最佳答案

我看到这些问题:

您的内部 CTabItem tbi1 的父级错误,它应该将内部文件夹作为其父级:

CTabItem tbi1 = new CTabItem(ctf_inner, SWT.FLAT);

您需要使用 CTabItem.setControl() 方法告诉 CTabItem 它所管理的控件。因此外部选项卡将内部文件夹作为其控制:

ctb1.setControl(ctf_inner);

您可能还需要创建内部文件夹的子级才能正确显示内容:

Composite innerComp = new Composite(ctf_inner, SWT.NONE);

tbi1.setControl(innerComp);

关于java - 我如何将 CtabFolder 放置在 SWT 中的另一个 CTabfolder 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22059915/

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