.keyCode == 99&&(e.stateMask &SWT.CTRL ) != 0相当于ctrl+c
//list 为TableViewer对象
list.getTable().addKeyListener(new KeyAdapter() {
public void keyPressed(KeyEvent e) {
// System.out.println("KeyEvent:"+e);
// System.out.println("KeyEvent_charcacter:"+e.character);
// System.out.println("KeyEvent_keyCode:"+e.keyCode);
// System.out.println("KeyEvent_stateMask:"+e.stateMask);
if( e.keyCode == 99&&(e.stateMask &SWT.CTRL ) != 0) {
//System.out.println("SWT.CTRL--99-opopopopopop");
copySQLinfo();
}
if (e.keyCode == SWT.DEL) {
List selectedElements = ((StructuredSelection) list
.getSelection()).toList();
Object item = null;
boolean isSelectedHistory = true;
for (Iterator it = selectedElements.iterator(); it
.hasNext();) {
item = it.next();
if (item instanceof ItemsListSeparator
|| !isHistoryElement(item)) {
isSelectedHistory = false;
break;
}
}
if (isSelectedHistory)
removeSelectedItems(selectedElements);
}
if (e.keyCode == SWT.ARROW_UP && (e.stateMask & SWT.SHIFT) != 0
&& (e.stateMask & SWT.CTRL) != 0) {
StructuredSelection selection = (StructuredSelection) list
.getSelection();
if (selection.size() == 1) {
Object element = selection.getFirstElement();
if (element.equals(list.getElementAt(0))) {
pattern.setFocus();
}
if (list.getElementAt(list.getTable()
.getSelectionIndex() - 1) instanceof ItemsListSeparator)
list.getTable().setSelection(
list.getTable().getSelectionIndex() - 1);
list.getTable().notifyListeners(SWT.Selection,
new Event());
}
}
if (e.keyCode == SWT.ARROW_DOWN
&& (e.stateMask & SWT.SHIFT) != 0
&& (e.stateMask & SWT.CTRL) != 0) {
System.out.println("22222222222222222222222");
if (list
.getElementAt(list.getTable().getSelectionIndex() + 1) instanceof ItemsListSeparator)
list.getTable().setSelection(
list.getTable().getSelectionIndex() + 1);
list.getTable().notifyListeners(SWT.Selection, new Event());
}
}
});