package com.zjiet.ui.layout;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.CLabel;
import org.eclipse.swt.custom.SashForm;
import org.eclipse.swt.custom.StackLayout;
import org.eclipse.swt.events.MouseEvent;
import org.eclipse.swt.events.MouseListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Label;
import com.nlteck.component.CollapseNav;
import com.nlteck.component.CustomDialog;
import com.nlteck.component.CollapseNav.TreeNode;
import com.nlteck.resource.SWTResourceManager;
import com.nlteck.resource.UIResource;
import com.nlteck.swtlib.tools.UITools;
import com.zjiet.ui.view.DataAnalysisView;
import com.zjiet.ui.view.DataCurveView;
import com.zjiet.ui.view.DcirCalView;
import com.zjiet.ui.view.SortingView;
public class MainFrame extends CustomDialog {
private Composite dataAnalysisCompo, sortingCompo, dcirCalCompo,dataCurveCompo;
private StackLayout stackLayout;
private MouseListener mouseListener;
private Composite rightNavComp;
private final static String NL_TITLE = "锂电池数据分析平台v1.0.0";
private static String[] navItems = {"数据汇总","曲线分析","数据分选","DCIR计算"};
public MainFrame(Display display) {
super(display, NL_TITLE, SWT.RESIZE | SWT.MIN | SWT.MAX);
getShell().setImage(UIResource.brandImg16);
getLogoLabel().setImage(UIResource.brandImg16);
UITools.centerScreen(this);
}
@Override
public void createComponent(Composite contentComp) {
SashForm sashForm = new SashForm(contentComp, SWT.NONE);
sashForm.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
Composite leftNavComp = new Composite(sashForm, SWT.NONE);
leftNavComp.setLayout(new GridLayout(1, true));
leftNavComp.setBackground(UIResource.LIGHT_SILVER_CLR);
leftNavComp.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
GridLayout gl_uploadItemComp = new GridLayout(1, false);
gl_uploadItemComp.verticalSpacing = 0;
gl_uploadItemComp.horizontalSpacing = 0;
gl_uploadItemComp.marginHeight = 0;
gl_uploadItemComp.marginWidth = 0;
leftNavComp.setLayout(gl_uploadItemComp);
createMouseLister();
CollapseNav collapseNav = new CollapseNav(leftNavComp, SWT.BORDER, getNavData(), mouseListener);
collapseNav.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
rightNavComp = new Composite(sashForm, SWT.NONE);
stackLayout = new StackLayout();
rightNavComp.setLayout(stackLayout);
dataAnalysisCompo = new DataAnalysisView(rightNavComp, SWT.NONE);
sortingCompo = new SortingView(rightNavComp, SWT.NONE);
dcirCalCompo = new DcirCalView(rightNavComp, SWT.NONE);
dataCurveCompo = new DataCurveView(rightNavComp, SWT.NONE);
stackLayout.topControl = dataAnalysisCompo;
sashForm.setWeights(new int[] {2, 15});
}
private void createMouseLister() {
mouseListener = new MouseListener() {
@Override
public void mouseUp(MouseEvent arg0) {
if(arg0.getSource() instanceof CLabel) {
String navTitle = ((CLabel)arg0.getSource()).getText();
if(navItems[0].equals(navTitle)) {
stackLayout.topControl = dataAnalysisCompo;
} else if(navItems[1].equals(navTitle)) {
//"数据汇总","曲线分析","数据分选","DCIR计算"
stackLayout.topControl = dataCurveCompo;
} else if(navItems[2].equals(navTitle)) {
//"数据汇总","曲线分析","数据分选","DCIR计算"
stackLayout.topControl = sortingCompo;
} else if(navItems[3].equals(navTitle)) {
//"数据汇总","曲线分析","数据分选","DCIR计算"
stackLayout.topControl = dcirCalCompo;
}
rightNavComp.requestLayout();
}
}
@Override
public void mouseDown(MouseEvent arg0) {
// TODO Auto-generated method stub
}
@Override
public void mouseDoubleClick(MouseEvent arg0) {
// TODO Auto-generated method stub
}
};
}
@Override
protected void setSize() {
this.setSize(1500, 1000);
}
public List<TreeNode> getNavData() {
List<TreeNode> treeNodes = new ArrayList<CollapseNav.TreeNode>();
for(int n = 0; n < navItems.length; n++) {
treeNodes.add(new TreeNode(navItems[n], UIResource.labUploadLogo16,
SWTResourceManager.getFont("华文中宋", 12, SWT.NORMAL), UIResource.WHITE_CLR, UIResource.DEEP_BLUE_CLR, true));
}
return treeNodes;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
DataWatchTool.7z (46个子文件)
DataWatchTool
lib
org.eclipse.swt.win32.win32.x86_64.source_3.106.0.v20161027-0130.jar 2.4MB
org.eclipse.nebula.widgets.picture.source_1.0.0.201806070735.jar 34KB
org.eclipse.nebula.widgets.cdatetime_1.0.0.201703081533.jar 132KB
org.eclipse.swt_3.106.0.v20161027-0130.jar 19KB
org.eclipse.nebula.widgets.nattable.extension.glazedlists_1.5.0.201703192131.jar 131KB
org.eclipse.nebula.cwt_1.0.0.201703081533.jar 157KB
org.eclipse.nebula.widgets.treemapper.examples_0.1.0.201806070735.jar 17KB
org.eclipse.nebula.widgets.radiogroup.source_0.1.0.201806070735.jar 15KB
nlteckSWTLib.v1.0.0.jar 4.95MB
org.eclipse.nebula.widgets.nattable.extension.e4_1.1.0.201703192131.jar 53KB
org.eclipse.nebula.widgets.nattable.extension.poi_1.5.0.201703192131.jar 20KB
org.eclipse.nebula.widgets.nattable.extension.poi.source_1.5.0.201703192131.jar 16KB
org.eclipse.nebula.widgets.nattable.extension.nebula.source_1.1.0.201703192131.jar 22KB
org.eclipse.core.commands_3.9.0.v20160901-1319.jar 112KB
org.eclipse.nebula.widgets.radiogroup.example_1.0.0.201806070735.jar 17KB
org.eclipse.nebula.widgets.treemapper_0.1.0.201806070735.jar 27KB
org.eclipse.jface_3.13.0.v20161022-1508.jar 1.04MB
SWTComponent.jar 94KB
org.eclipse.nebula.widgets.nattable.core.source_1.5.0.201703192131.jar 1.44MB
org.eclipse.nebula.widgets.treemapper.source_0.1.0.201806070735.jar 17KB
org.eclipse.core.resources_3.10.1.v20150725-1910.jar 805KB
org.eclipse.swt.win32.win32.x86_64_3.106.0.v20161027-0130.jar 2.67MB
org.eclipse.nebula.widgets.nattable.extension.e4.source_1.1.0.201703192131.jar 40KB
org.eclipse.equinox.common_3.9.0.v20161026-0735.jar 118KB
org.eclipse.nebula.widgets.radiogroup.example.source_1.0.0.201806070735.jar 10KB
org.eclipse.nebula.widgets.treemapper.examples.source_0.1.0.201806070735.jar 14KB
org.eclipse.nebula.widgets.nattable.core_1.5.0.201703192131.jar 1.82MB
org.eclipse.nebula.widgets.nattable.extension.glazedlists.source_1.5.0.201703192131.jar 96KB
org.eclipse.nebula.widgets.nattable.extension.nebula_1.1.0.201703192131.jar 32KB
org.eclipse.jface.source_3.13.0.v20161022-1508.jar 987KB
.classpath 3KB
.settings
org.eclipse.jdt.core.prefs 598B
src
com
zjiet
service
MainApplication.java 418B
ui
view
DataAnalysisView.java 954B
DataCurveView.java 710B
SortingView.java 706B
DcirCalView.java 710B
layout
MainFrame.java 5KB
bin
com
zjiet
MainApplication.class 869B
service
ui
view
SortingView.class 1KB
DataAnalysisView.class 979B
DcirCalView.class 1KB
DataCurveView.class 1KB
layout
MainFrame$1.class 2KB
MainFrame.class 5KB
.project 389B
共 46 条
- 1
资源评论
ZJIET-LC
- 粉丝: 64
- 资源: 70
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功