`
zfwdl2005
  • 浏览: 242962 次
  • 性别: Icon_minigender_1
  • 来自: 西安
社区版块
存档分类
最新评论

swt

阅读更多

swt 表格的编辑的语法:

 

public static void main(String[] args) {
  final Display display = new Display();
  Shell shell = new Shell(display);
  shell.setText("table放在选项框中的实例");
  
  //sheet1
  TabFolder sheet1 = new TabFolder(shell,SWT.NONE);
  sheet1.setBounds(5, 5, 1000, 700);
  TabItem item1 = new TabItem(sheet1,SWT.NONE);
  item1.setText("sheet1");
  
  Composite composite1 = new Composite(sheet1,SWT.NONE);
  composite1.setBounds(5, 5, 180, 130);
  final Table table1 = new Table(composite1,SWT.V_SCROLL | SWT.H_SCROLL | SWT.SINGLE | SWT.FULL_SELECTION );
  table1.setBounds(0, 0, 900, 600);
  table1.setVisible(true);
  table1.setLinesVisible(true);
  //table1.setItemCount(10);//?
  TableColumn[] columns1 = new TableColumn[10];
  for(int i = 0 ; i<10 ; i++){
   columns1[i] = new TableColumn(table1,SWT.CENTER);
   columns1[i].setText(i+"");
   //columns1[i].setResizable(true);//?
   columns1[i].setWidth(70);
   
   
  }
  TableItem temp = null;
  for(int i = 0;i<10;i++){
   temp = new TableItem(table1,SWT.NONE);
   for(int j = 0;j<10;j++){
    temp.setText(j, i+""+j);
   }
  }
  
  item1.setControl(composite1);
  
  table1.addListener(SWT.MouseDoubleClick, new Listener(){

   @Override
   public void handleEvent(Event event) {
    Point  point = new Point(event.x,event.y);
    TableItem itm = table1.getItem(point);
    if(itm == null)
     return;
    for(int i = 0;i<10;i++){
     Rectangle rect = itm.getBounds(i);
     if(rect.contains(point)){
      System.out.println("列值"+i);
      final TableEditor editor = new TableEditor(table1);
      Control oldEditor = editor.getEditor();
      if(oldEditor != null)
       oldEditor.dispose();
      Text textEditor = new Text(table1,SWT.NONE);
      textEditor.computeSize(SWT.DEFAULT, table1.getItemHeight());
      editor.grabHorizontal = true;
      editor.minimumHeight = textEditor.getSize().y;
      editor.minimumWidth = textEditor.getSize().x;
      editor.setEditor(textEditor,itm,i);
      textEditor.setFont(new Font(display,"宋体",10,SWT.ITALIC));
      textEditor.setText(itm.getText(i));
      textEditor.forceFocus();
      final int myi = i;
      textEditor.addModifyListener(new ModifyListener() {
       
       @Override
       public void modifyText(ModifyEvent e) {
        Text text = (Text)editor.getEditor();
        text.setForeground(display.getSystemColor(SWT.COLOR_RED));
        editor.getItem().setText(myi,text.getText());
       }
      });
      textEditor.addFocusListener(new org.eclipse.swt.events.FocusAdapter() {

       @Override
       public void focusLost(FocusEvent e) {
        System.out.println("失去焦点");
        String text = ((Text)editor.getEditor()).getText();
        editor.getEditor().dispose();
        TableItem[] is = table1.getItems();
        for(int i = 0;i<is.length;i++){
         for(int j = 0;j<10;j++){
          System.out.print( is[i].getText(j)+" ");
         }
         System.out.println();
         
        }
       }
       
      });
     }
    }
   }
   
  });
  
  TabItem item2 = new TabItem(sheet1,SWT.NONE);
  item2.setText("sheet2");
  
  Label l2 = new Label(sheet1,SWT.NONE);
  l2.setBounds(5, 20, 40, 40);
  l2.setText("第二个2");
  item2.setControl(l2);
  
  
  
  //shell.pack();
  shell.open();
  
  while(!shell.isDisposed()){
   if(!display.readAndDispatch())
    display.sleep();
  }
  display.dispose();
 }

  • src.zip (5.6 KB)
  • 下载次数: 22
0
0
分享到:
评论

相关推荐

    swt-64.rar_64位swt_64的SWT_SWT64_swt.jar 64位_swt64位

    标题“swt-64.rar_64位swt_64的SWT_SWT64_swt.jar 64位_swt64位”表明这个压缩包包含了适用于64位Windows操作系统的SWT库。描述中提到的“64位windows操作系统使用的SWT库”进一步确认了这一点。 SWT的设计目标是...

    org.eclipse.swt.win32

    org.eclipse.swt.SWT.class org.eclipse.swt.SWTError.class org.eclipse.swt.SWTException.class org.eclipse.swt.accessibility.ACC.class org.eclipse.swt.accessibility.Accessible.class org.eclipse.swt....

    SWT源码 swt.jar

    SWT(Standard Widget Toolkit)是Eclipse项目的一个重要组成部分,它提供了一套用于构建图形用户界面(GUI)的API,与Java Swing不同,SWT基于操作系统原生的UI组件,因此能够实现更好的性能和与操作系统的集成。...

    swt原生库(用java开发swt用)

    SWT,全称为Standard Widget Toolkit,是Eclipse项目下的一个开源Java GUI库,它允许Java开发者创建与操作系统原生界面风格一致的用户界面。SWT的设计目标是克服Java AWT和Swing库在性能和外观上的不足,尤其在...

    SWT JFace 按键、事件、监听

    ### SWT JFace 按键、事件、监听 #### 概述 SWT(Standard Widget Toolkit)是Eclipse平台下的图形界面开发工具包,而JFace则是基于SWT之上的高级用户界面工具集。SWT提供了低级别的组件,用于创建跨平台的图形...

    java swt自定义控件

    Java SWT(Standard Widget Toolkit)是Java平台上用于创建桌面应用程序的一个库,它提供了丰富的用户界面元素,如按钮、文本框、列表等。SWT是Eclipse IDE的基础,它通过与操作系统直接交互来提供本地化的图形用户...

    swt/jface in action中文版

    ### SWT/JFace in Action中文版知识点详述 #### 1.1 SWT/JFace概览 - **SWT和JFace的目的**:SWT (Standard Widget Toolkit) 和 JFace 是 Eclipse 平台的核心组成部分,旨在帮助开发者创建高性能且具有原生外观的...

    SWT widgets基本教程

    ### SWT Widgets 基本教程知识点详解 #### 1. 概述 SWT (Standard Widget Toolkit) 是 Eclipse 平台的一部分,它提供了一系列的 GUI 组件,允许开发者构建跨平台的应用程序。SWT 的主要优势在于其原生外观和高性能...

    swt源码和jar包dj-native-swing-swt.jar

    在标题提到的"swt源码和jar包dj-native-swing-swt.jar"中,"dj-native-swing-swt.jar"是一个特殊的库,它结合了SWT和JNativeSwing,允许在Java Swing应用中嵌入SWT组件。这使得开发者可以在同一应用程序中同时使用...

    SWT内存泄露解决办法

    SWT(Standard Widget Toolkit)是Eclipse项目提供的一种用于创建图形用户界面(GUI)的开源库,它在Java平台上提供了与本机系统更紧密的集成。然而,SWT应用程序可能会遇到内存泄露问题,这会导致程序运行缓慢,...

    SWT 插件包 (windows 环境)

    **SWT 插件包(Windows 环境)** SWT,全称为Standard Widget Toolkit,是Java编程语言中用于创建图形用户界面(GUI)的一个开源库。它由Eclipse基金会维护,主要用于Eclipse集成开发环境(IDE)以及其他Java应用...

    DJNativeSwing-SWT.jar、DJNativeSwing.jar、swt-win-x64.jar

    Java平台上的图形用户界面(GUI)开发通常依赖于各种库和框架,DJNativeSwing和SWT(Standard Widget Toolkit)是其中两个重要的组件。本文将详细介绍这三个提及的JAR文件以及它们在Java应用中的作用。 首先,...

    swt-4.3-win64.rar,swt-4.3-win32-x86.jar

    SWT (Standard Widget Toolkit) 是一个开放源代码的Java库,用于创建图形用户界面(GUI)。这个库由Eclipse基金会维护,它允许Java开发者利用操作系统原生的窗口、控件和外观,使得Java应用程序可以拥有与本地应用...

    32位swt的jar包

    SWT(Standard Widget Toolkit)是Eclipse开源组织提供的一款用于创建Java图形用户界面(GUI)的库,它是Java AWT和Swing之外的一个选择。SWT设计的目标是提供更高效、更原生的UI体验,因为它直接与操作系统API交互...

    java界面库swt.jar 4.911

    下载编译的SWT库,版本号4.911,包含多个版本: org.eclipse.swt.cocoa.macosx.x86_64 org.eclipse.swt.gtk.linux.aarch64 org.eclipse.swt.gtk.linux.arm org.eclipse.swt.gtk.linux.ppc64le org.eclipse.swt.gtk....

    swt table 实现换行

    根据提供的文件信息,可以看出本文主要讨论的是如何在 SWT (Standard Widget Toolkit) 的 Table 控件中实现文本换行的功能。SWT 是一个用于开发基于 Java 的桌面应用程序的工具包,它提供了丰富的用户界面组件来帮助...

    swt资源释放问题

    SWT 资源释放问题详解 SWT(Standard Widget Toolkit)是一种基于 Java 的 GUI 工具包,提供了丰富的图形用户界面组件和事件处理机制。但是, SWT 中的资源释放问题是一件棘手的事情。如果不正确地释放资源,可能...

    SWT可视化插件

    SWT(Standard Widget Toolkit)是Java中用于创建桌面应用程序的一种图形用户界面(GUI)库,它是Eclipse项目的一部分。SWT的设计目标是提供一个高效、本地化的GUI工具包,能够利用操作系统提供的原生控件,从而让...

    SWT配置 SWT配置 SWT配置 SWT配置 SWT配置

    ### SWT配置详解 #### 一、SWT简介与配置的重要性 SWT(Standard Widget Toolkit)是一种用于构建基于Java的应用程序的图形用户界面工具包。它提供了丰富的控件集,并能够生成本地外观和感觉的界面,这使得应用在...

    swt-arm64.jar.zip

    《SWT库在国产化服务器环境中的应用与替换》 SWT(Standard Widget Toolkit)是一个开源的Java图形用户界面(GUI)工具包,它为Java应用程序提供了与操作系统原生界面集成的能力。SWT的设计目标是提供高效、快速且...

Global site tag (gtag.js) - Google Analytics