• JTable


    final Table table = new Table(parent, SWT.NONE | SWT.FULL_SELECTION);
      final GridData gd = new GridData(SWT.LEFT, SWT.TOP, false, true);
      gd.heightHint = 100;
      table.setLayoutData(gd);
      table.setHeaderVisible(true);
      table.setLinesVisible(true);
      final TableColumn tcCondition = new TableColumn(table, SWT.None);
      final TableColumn tcUserValue = new TableColumn(table, SWT.None);
      final TableColumn tcUserColor = new TableColumn(table, SWT.None);
      tcCondition.setText("条件");
      tcCondition.setWidth(80);
      tcUserValue.setText("枚举值");
      tcUserValue.setWidth(80);
      tcUserColor.setText("颜色");
      tcUserColor.setWidth(80);
      table.addListener(SWT.MouseDoubleClick, new Listener() {
       int editColumnIndex = -1;
       @Override
       public void handleEvent(final Event e) {
        final Point point = new Point(e.x, e.y);
        final TableItem tableItem = table.getItem(point);
        if (tableItem == null) {
         return;
        }
        for (int i = 0; i < 3; i++) {
         final Rectangle r = tableItem.getBounds(i);
         if (r.contains(point)) {
          editColumnIndex = i;
          final TableEditor editor = new TableEditor(table);
          final Control oldEditor = editor.getEditor();
          if (oldEditor != null) {
           oldEditor.dispose();
          }
          final Text text = new Text(table, SWT.NONE);
          text.computeSize(SWT.DEFAULT, table.getItemHeight());
          editor.grabHorizontal = true;
          editor.minimumHeight = text.getSize().y;
          editor.minimumWidth = text.getSize().x;
          editor.setEditor(text, tableItem, editColumnIndex);
          text.setText(tableItem.getText(editColumnIndex));
          text.forceFocus();
          text.addModifyListener(new ModifyListener() {
           @Override
           public void modifyText(final ModifyEvent e) {
            editor.getItem().setText(editColumnIndex, text.getText());
           }
          });
          text.addFocusListener(new FocusListener() {
           @Override
           public void focusGained(final FocusEvent e) {
            // TODO Auto-generated method stub
           }
           @Override
           public void focusLost(final FocusEvent e) {
            text.setForeground(Display.getCurrent().getSystemColor(SWT.COLOR_BLUE));
            text.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_BLUE));
           }
          });
         }
        }
       }
      });
    

      

  • 相关阅读:
    lambda 是个啥玩意
    python中读写操作plist
    通过os中的os.path.basename获取路径中的文件名
    python遍历目录的两种方法
    mac下已有pyhon2.7,装了python3 之后,怎么调用python3啊
    Python: easy_install & pip 下载PyPi 公共资源库的工具
    安装python的图形处理库: pillow
    minSdkVersion, targetSdkVersion, targetApiLevel,compileSdkVersion,buildToolsVersion
    bat 批量修改文件名字
    a b两向量叉乘 <0说明a在b左边
  • 原文地址:https://www.cnblogs.com/nicebaby/p/6273047.html
Copyright © 2020-2023  润新知