java.awt.event.MouseEvent#MOUSE_PRESSED源码实例Demo

下面列出了java.awt.event.MouseEvent#MOUSE_PRESSED 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: darklaf   文件: MouseEventUI.java
@SuppressWarnings("DuplicatedCode")

    private Component getListeningComponent(final MouseEvent event, final Component component) {
        Component comp;
        switch (event.getID()) {
            case MouseEvent.MOUSE_CLICKED :
            case MouseEvent.MOUSE_ENTERED :
            case MouseEvent.MOUSE_EXITED :
            case MouseEvent.MOUSE_PRESSED :
            case MouseEvent.MOUSE_RELEASED :
                comp = getMouseListeningComponent(component);
                break;
            case MouseEvent.MOUSE_DRAGGED :
            case MouseEvent.MOUSE_MOVED :
                comp = getMouseMotionListeningComponent(component);
                break;
            case MouseEvent.MOUSE_WHEEL :
                comp = getMouseWheelListeningComponent(component);
                break;
            default :
                comp = null;
        }
        return comp;
    }
 
源代码2 项目: openjdk-8   文件: XComponentPeer.java
void handleJavaMouseEvent(MouseEvent e) {
        switch (e.getID()) {
          case MouseEvent.MOUSE_PRESSED:
              if (target == e.getSource() &&
                  !target.isFocusOwner() &&
                  XKeyboardFocusManagerPeer.shouldFocusOnClick(target))
              {
                  XWindowPeer parentXWindow = getParentTopLevel();
                  Window parentWindow = ((Window)parentXWindow.getTarget());
                  // Simple windows are non-focusable in X terms but focusable in Java terms.
                  // As X-non-focusable they don't receive any focus events - we should generate them
                  // by ourselfves.
//                   if (parentXWindow.isFocusableWindow() /*&& parentXWindow.isSimpleWindow()*/ &&
//                       !(getCurrentNativeFocusedWindow() == parentWindow))
//                   {
//                       setCurrentNativeFocusedWindow(parentWindow);
//                       WindowEvent wfg = new WindowEvent(parentWindow, WindowEvent.WINDOW_GAINED_FOCUS);
//                       parentWindow.dispatchEvent(wfg);
//                   }
                  XKeyboardFocusManagerPeer.requestFocusFor(target, CausedFocusEvent.Cause.MOUSE_EVENT);
              }
              break;
        }
    }
 
源代码3 项目: openjdk-8-source   文件: XComponentPeer.java
void handleJavaMouseEvent(MouseEvent e) {
        switch (e.getID()) {
          case MouseEvent.MOUSE_PRESSED:
              if (target == e.getSource() &&
                  !target.isFocusOwner() &&
                  XKeyboardFocusManagerPeer.shouldFocusOnClick(target))
              {
                  XWindowPeer parentXWindow = getParentTopLevel();
                  Window parentWindow = ((Window)parentXWindow.getTarget());
                  // Simple windows are non-focusable in X terms but focusable in Java terms.
                  // As X-non-focusable they don't receive any focus events - we should generate them
                  // by ourselfves.
//                   if (parentXWindow.isFocusableWindow() /*&& parentXWindow.isSimpleWindow()*/ &&
//                       !(getCurrentNativeFocusedWindow() == parentWindow))
//                   {
//                       setCurrentNativeFocusedWindow(parentWindow);
//                       WindowEvent wfg = new WindowEvent(parentWindow, WindowEvent.WINDOW_GAINED_FOCUS);
//                       parentWindow.dispatchEvent(wfg);
//                   }
                  XKeyboardFocusManagerPeer.requestFocusFor(target, CausedFocusEvent.Cause.MOUSE_EVENT);
              }
              break;
        }
    }
 
源代码4 项目: 07kit   文件: LootProfitAndDropRecorder.java
@EventHandler
public void handleReset(MouseEvent event) {
    if (resetBounds != null && resetBounds.contains(event.getX() - getPosition().getX(), event.getY() - getPosition().getY())) {
        if (event.getID() == MouseEvent.MOUSE_PRESSED) {
            clicking = true;
            event.consume();
        } else if (event.getID() == MouseEvent.MOUSE_CLICKED) {
            resetKills();
            event.consume();
        } else {
            hovered = true;
            clicking = false;
            event.consume();
        }
    } else {
        clicking = false;
        hovered = false;
    }
}
 
源代码5 项目: rapidminer-studio   文件: PanningManager.java
@Override
public void eventDispatched(AWTEvent e) {
	if (e instanceof MouseEvent) {
		MouseEvent me = (MouseEvent) e;
		if (!SwingUtilities.isDescendingFrom(me.getComponent(), target)) {
			return;
		}
		if (me.getID() == MouseEvent.MOUSE_RELEASED) {
			// stop when mouse released
			mouseOnScreenPoint = null;
			if (timer.isRunning()) {
				timer.stop();
			}
		} else if (me.getID() == MouseEvent.MOUSE_DRAGGED && me.getComponent() == target) {
			mouseOnScreenPoint = me.getLocationOnScreen();
		} else if (me.getID() == MouseEvent.MOUSE_PRESSED && me.getComponent() == target) {
			mouseOnScreenPoint = me.getLocationOnScreen();
			timer.start();
		}
	}
}
 
源代码6 项目: openjdk-8-source   文件: XToolkit.java
static boolean isRightMouseButton(MouseEvent me) {
    int numButtons = ((Integer)getDefaultToolkit().getDesktopProperty("awt.mouse.numButtons")).intValue();
    switch (me.getID()) {
      case MouseEvent.MOUSE_PRESSED:
      case MouseEvent.MOUSE_RELEASED:
          return ((numButtons == 2 && me.getButton() == MouseEvent.BUTTON2) ||
                   (numButtons > 2 && me.getButton() == MouseEvent.BUTTON3));
      case MouseEvent.MOUSE_ENTERED:
      case MouseEvent.MOUSE_EXITED:
      case MouseEvent.MOUSE_CLICKED:
      case MouseEvent.MOUSE_DRAGGED:
          return ((numButtons == 2 && (me.getModifiersEx() & InputEvent.BUTTON2_DOWN_MASK) != 0) ||
                  (numButtons > 2 && (me.getModifiersEx() & InputEvent.BUTTON3_DOWN_MASK) != 0));
    }
    return false;
}
 
源代码7 项目: openjdk-jdk9   文件: bug7146377.java
private static String eventToString(MouseEvent e) {
    StringBuilder result = new StringBuilder();

    switch (e.getID()) {
        case MouseEvent.MOUSE_PRESSED:
            result.append("MOUSE_PRESSED");
            break;
        case MouseEvent.MOUSE_RELEASED:
            result.append("MOUSE_RELEASED");
            break;
        case MouseEvent.MOUSE_CLICKED:
            result.append("MOUSE_CLICKED");
            break;
        case MouseEvent.MOUSE_ENTERED:
            result.append("MOUSE_ENTERED");
            break;
        case MouseEvent.MOUSE_EXITED:
            result.append("MOUSE_EXITED");
            break;
        case MouseEvent.MOUSE_MOVED:
            result.append("MOUSE_MOVED");
            break;
        case MouseEvent.MOUSE_DRAGGED:
            result.append("MOUSE_DRAGGED");
            break;
        case MouseEvent.MOUSE_WHEEL:
            result.append("MOUSE_WHEEL");
            break;
        default:
            result.append("unknown type");
    }

    result.append(", modifiers = " + MouseEvent.getMouseModifiersText(e.getModifiers()));
    result.append(", modifiersEx = " + MouseEvent.getMouseModifiersText(e.getModifiersEx()));
    result.append(", button = " + e.getButton());

    return result.toString();
}
 
源代码8 项目: openjdk-8-source   文件: WLightweightFramePeer.java
@Override
public void handleEvent(java.awt.AWTEvent e) {
    if (e.getID() == MouseEvent.MOUSE_PRESSED) {
        emulateActivation(true);
    }
    super.handleEvent(e);
}
 
源代码9 项目: jdk8u-jdk   文件: WLightweightFramePeer.java
@Override
public void handleEvent(java.awt.AWTEvent e) {
    if (e.getID() == MouseEvent.MOUSE_PRESSED) {
        emulateActivation(true);
    }
    super.handleEvent(e);
}
 
源代码10 项目: megamek   文件: MegamekButton.java
protected void processMouseEvent(MouseEvent e) {
    if (e.getID() == MouseEvent.MOUSE_EXITED) {
        isMousedOver = false;
        repaint();
    } else if (e.getID() == MouseEvent.MOUSE_ENTERED) {
        isMousedOver = true;
    } else if (e.getID() == MouseEvent.MOUSE_PRESSED) {
        isPressed = true;
    } else if (e.getID() == MouseEvent.MOUSE_RELEASED) {
        isPressed = false;
    }
    super.processMouseEvent(e);
}
 
源代码11 项目: consulo   文件: TreeTable.java
@Override
public boolean editCellAt(int row, int column, EventObject e) {
  boolean editResult = super.editCellAt(row, column, e);
  if (e instanceof MouseEvent && isTreeColumn(column)){
    MouseEvent me = (MouseEvent)e;
    int y = me.getY();

    if (getRowHeight() != myTree.getRowHeight()) {
      // fix y if row heights are not equal
      // [todo]: review setRowHeight to synchronize heights correctly!
      final Rectangle tableCellRect = getCellRect(row, column, true);
      y = Math.min(y - tableCellRect.y, myTree.getRowHeight() - 1) + row * myTree.getRowHeight();
    }

    MouseEvent newEvent = new MouseEvent(myTree, me.getID(),
                                         me.getWhen(), me.getModifiers(),
                                         me.getX() - getCellRect(0, column, true).x,
                                         y, me.getClickCount(),
                                         me.isPopupTrigger()
    );
    myTree.dispatchEvent(newEvent);

    // Some LAFs, for example, Aqua under MAC OS X
    // expand tree node by MOUSE_RELEASED event. Unfortunately,
    // it's not possible to find easy way to wedge in table's
    // event sequense. Therefore we send "synthetic" release event.
    if (newEvent.getID()==MouseEvent.MOUSE_PRESSED) {
      MouseEvent newME2 = new MouseEvent(
              myTree,
              MouseEvent.MOUSE_RELEASED,
              me.getWhen(), me.getModifiers(),
              me.getX() - getCellRect(0, column, true).x,
              y - getCellRect(0, column, true).y, me.getClickCount(),
              me.isPopupTrigger()
      );
      myTree.dispatchEvent(newME2);
    }
  }
  return editResult;
}
 
源代码12 项目: jdk8u-jdk   文件: bug7146377.java
private static String eventToString(MouseEvent e) {
    StringBuilder result = new StringBuilder();

    switch (e.getID()) {
        case MouseEvent.MOUSE_PRESSED:
            result.append("MOUSE_PRESSED");
            break;
        case MouseEvent.MOUSE_RELEASED:
            result.append("MOUSE_RELEASED");
            break;
        case MouseEvent.MOUSE_CLICKED:
            result.append("MOUSE_CLICKED");
            break;
        case MouseEvent.MOUSE_ENTERED:
            result.append("MOUSE_ENTERED");
            break;
        case MouseEvent.MOUSE_EXITED:
            result.append("MOUSE_EXITED");
            break;
        case MouseEvent.MOUSE_MOVED:
            result.append("MOUSE_MOVED");
            break;
        case MouseEvent.MOUSE_DRAGGED:
            result.append("MOUSE_DRAGGED");
            break;
        case MouseEvent.MOUSE_WHEEL:
            result.append("MOUSE_WHEEL");
            break;
        default:
            result.append("unknown type");
    }

    result.append(", modifiers = " + MouseEvent.getMouseModifiersText(e.getModifiers()));
    result.append(", modifiersEx = " + MouseEvent.getMouseModifiersText(e.getModifiersEx()));
    result.append(", button = " + e.getButton());

    return result.toString();
}
 
源代码13 项目: darklaf   文件: MouseEventUI.java
@SuppressWarnings("Duplicates")
private void redispatch(final MouseEvent originalEvent,
                        final JXLayer<? extends V> layer) {
    if (layer.getView() != null) {
        if (originalEvent.getComponent() != layer.getGlassPane()) {
            originalEvent.consume();
        }
        MouseEvent newEvent = null;

        Point realPoint = calculateTargetPoint(layer, originalEvent);
        Component realTarget = getTarget(layer, realPoint);
        if (realTarget != null) {
            realTarget = getListeningComponent(originalEvent, realTarget);
        }

        switch (originalEvent.getID()) {
            case MouseEvent.MOUSE_PRESSED :
                newEvent = transformMouseEvent(layer, originalEvent, realTarget, realPoint);
                if (newEvent != null) {
                    lastPressedTarget = newEvent.getComponent();
                }
                break;
            case MouseEvent.MOUSE_RELEASED :
                newEvent = transformMouseEvent(layer, originalEvent, lastPressedTarget, realPoint);
                lastPressedTarget = null;
                break;
            case MouseEvent.MOUSE_ENTERED :
            case MouseEvent.MOUSE_EXITED :
                generateEnterExitEvents(layer, originalEvent, realTarget, realPoint);
                break;
            case MouseEvent.MOUSE_MOVED :
                newEvent = transformMouseEvent(layer, originalEvent, realTarget, realPoint);
                generateEnterExitEvents(layer, originalEvent, realTarget, realPoint);
                break;
            case MouseEvent.MOUSE_DRAGGED :
                newEvent = transformMouseEvent(layer, originalEvent, lastPressedTarget, realPoint);
                generateEnterExitEvents(layer, originalEvent, realTarget, realPoint);
                break;
            case MouseEvent.MOUSE_CLICKED :
                newEvent = transformMouseEvent(layer, originalEvent, realTarget, realPoint);
                break;
            case (MouseEvent.MOUSE_WHEEL) :
                redispatchMouseWheelEvent((MouseWheelEvent) originalEvent, realTarget, layer);
                break;
        }
        dispatchMouseEvent(newEvent);
    }
}
 
源代码14 项目: netbeans   文件: TooltipWindow.java
public void eventDispatched(AWTEvent event) {
    if (event.getID() == MouseEvent.MOUSE_PRESSED || event.getID() == KeyEvent.KEY_PRESSED) {
        onClick(event);
    }
}
 
源代码15 项目: netbeans   文件: DocumentSwitcherTable.java
boolean onMouseEvent( MouseEvent e ) {
    Point p = e.getPoint();
    p = SwingUtilities.convertPoint((Component) e.getSource(), p, this);
    int selRow = getSelectedRow();
    int selCol = getSelectedColumn();
    if( selRow < 0 || selCol < 0 )
        return false;
    Item item = ( Item ) getModel().getValueAt( selRow, selCol );
    // #268040 - check whether the item is closable
    if (null != item && isClosable(item)) {
        Rectangle rect = getCellRect( selRow, selCol, false );
        if( rect.contains( p ) ) {
            Dimension size = btnClose.getPreferredSize();
            int x = rect.x+rect.width-size.width;
            int y = rect.y + (rect.height-size.height)/2;
            Rectangle btnRect = new Rectangle( x, y, size.width, size.height);
            boolean inButton = btnRect.contains( p );
            boolean mustRepaint = inCloseButtonRect != inButton;
            inCloseButtonRect = inButton;
            if( inButton ) {
                if( e.getID() == MouseEvent.MOUSE_PRESSED ) {
                    TabData tab = item.getTabData();
                    int tabIndex = displayer.getModel().indexOf( tab );
                    if( tabIndex >= 0 ) {
                        TabActionEvent evt = new TabActionEvent( displayer, TabDisplayer.COMMAND_CLOSE, tabIndex);
                        displayer.postActionEvent( evt );
                        return true;
                    }
                }
            }
            if( mustRepaint && lastRow == selRow && lastCol == selCol )
                repaint( btnRect );
            lastCol = selCol;
            lastRow = selRow;
            return inButton;
        }
    } else {
        inCloseButtonRect = false;
    }
    return false;
}
 
源代码16 项目: jdk8u60   文件: XButtonPeer.java
void handleJavaMouseEvent(MouseEvent e) {
    super.handleJavaMouseEvent(e);
    int id = e.getID();
    switch (id) {
      case MouseEvent.MOUSE_PRESSED:
          if (XToolkit.isLeftMouseButton(e) ) {
              Button b = (Button) e.getSource();

              if(b.contains(e.getX(), e.getY())) {
                  if (!isEnabled()) {
                      // Disabled buttons ignore all input...
                      return;
                  }
                  pressed = true;
                  armed = true;
                  repaint();
              }
          }

          break;

      case MouseEvent.MOUSE_RELEASED:
          if (XToolkit.isLeftMouseButton(e)) {
              if (armed)
              {
                  action(e.getWhen(),e.getModifiers());
              }
              pressed = false;
              armed = false;
              repaint();
          }

          break;

      case  MouseEvent.MOUSE_ENTERED:
          if (pressed)
              armed = true;
          break;
      case MouseEvent.MOUSE_EXITED:
          armed = false;
          break;
    }
}
 
源代码17 项目: jdk8u-jdk   文件: XButtonPeer.java
void handleJavaMouseEvent(MouseEvent e) {
    super.handleJavaMouseEvent(e);
    int id = e.getID();
    switch (id) {
      case MouseEvent.MOUSE_PRESSED:
          if (XToolkit.isLeftMouseButton(e) ) {
              Button b = (Button) e.getSource();

              if(b.contains(e.getX(), e.getY())) {
                  if (!isEnabled()) {
                      // Disabled buttons ignore all input...
                      return;
                  }
                  pressed = true;
                  armed = true;
                  repaint();
              }
          }

          break;

      case MouseEvent.MOUSE_RELEASED:
          if (XToolkit.isLeftMouseButton(e)) {
              if (armed)
              {
                  action(e.getWhen(),e.getModifiers());
              }
              pressed = false;
              armed = false;
              repaint();
          }

          break;

      case  MouseEvent.MOUSE_ENTERED:
          if (pressed)
              armed = true;
          break;
      case MouseEvent.MOUSE_EXITED:
          armed = false;
          break;
    }
}
 
源代码18 项目: marathonv5   文件: JavaRecorderHook.java
public boolean isContextMenuSequence(MouseEvent e) {
    return e.getID() == MouseEvent.MOUSE_PRESSED && inputEventGetModifiersExText(e.getModifiersEx()).equals(menuModifiers);
}
 
源代码19 项目: jclic   文件: SimpleAssociation.java
@Override
public void showHelp() {

  if (!helpWindowAllowed() || bg[0] == null)
    return;

  HelpActivityComponent hac = null;
  if (showSolution) {
    hac = new HelpActivityComponent(this) {
      ActiveBoxBag abb = null;
      int cellsPlaced = bg[1].countCellsWithIdAss(-1);

      public void render(Graphics2D g2, Rectangle dirtyRegion) {
        if (abb != null)
          abb.update(g2, dirtyRegion, this);
      }

      @Override
      public void init() {
        abb = (ActiveBoxBag) bg[0].clone();
        abb.setContainer(this);
        Dimension size = abb.getBounds().getSize();
        abb.setBounds(DEFAULT_MARGIN, DEFAULT_MARGIN, size.width, size.height);
        size.width += 2 * DEFAULT_MARGIN;
        size.height += 2 * DEFAULT_MARGIN;
        setPreferredSize(size);
        setMaximumSize(size);
        setMinimumSize(size);
        Point p = (Point) getClientProperty(HelpActivityComponent.PREFERRED_LOCATION);
        if (p != null)
          p.translate((int) bg[0].x - DEFAULT_MARGIN, (int) bg[0].y - DEFAULT_MARGIN);
      }

      @Override
      public void processMouse(MouseEvent e) {
        ActiveBox bx;
        boolean m;
        if (abb != null)
          switch (e.getID()) {
          case MouseEvent.MOUSE_PRESSED:
            bx = abb.findActiveBox(e.getPoint());
            if (bx != null) {
              m = bx.playMedia(ps);
              if (!m)
                playEvent(EventSounds.CLICK);
              if (bx.idAss >= 0) {
                ActiveBox bxSolution = bg[1].getActiveBox(useIdAss ? bx.idAss : bx.idOrder);
                markBox(bxSolution, false);
                if (bxSolution != null)
                  ps.reportNewAction(getActivity(), ACTION_HELP, bx.getDescription(), bxSolution.getDescription(),
                      false, cellsPlaced);
              }
            }
            break;
          case MouseEvent.MOUSE_RELEASED:
            unmarkBox();
            break;
          }
      }
    };
    hac.init();
  }
  if (ps.showHelp(hac, helpMsg))
    ps.reportNewAction(getActivity(), ACTION_HELP, null, null, false, bg[1].countCellsWithIdAss(-1));

  if (hac != null)
    hac.end();
}
 
源代码20 项目: netbeans   文件: NonEditabilityTest.java
public void testClickInvokesCustomEditor() throws Exception {
    if( !ExtTestCase.canSafelyRunFocusTests() )
        return;
    
    Node n = new ANode();
    setCurrentNode (n, sheet);

    sleep();

    requestFocus (sheet.table);
    sleep();

    Component owner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getPermanentFocusOwner();
    if (owner == sheet.table) { //sanity check to avoid random failures on some window managers

        System.out.println ("About to click cell");

        Rectangle r = sheet.table.getCellRect(1, 1, false);
        final MouseEvent me = new MouseEvent (sheet.table, MouseEvent.MOUSE_PRESSED,
            System.currentTimeMillis(), MouseEvent.BUTTON1_MASK, r.x + 3,
            r.y + 3, 2, false);

        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                sheet.table.dispatchEvent(me);
            }
        });

        sleep();
        sleep();

        System.out.println ("Now checking focus");

        owner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
        assertTrue ("Focus owner should be custom editor, not " + owner, owner instanceof JTextArea);

        JComponent jc = (JComponent) owner;
        assertTrue ("Custom editor should have been invoked, but focus owner's top level ancestor is not a dialog", jc.getTopLevelAncestor() instanceof Dialog);

        Dialog d = (Dialog) jc.getTopLevelAncestor();

        d.setVisible(false);
    }

    requestFocus (sheet.table);
    sleep();

    owner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getPermanentFocusOwner();
    if (owner == sheet.table) { //sanity check to avoid random failures on some window managers
        pressKey(sheet.table, KeyEvent.VK_SPACE);
        sleep();

        owner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getPermanentFocusOwner();
        assertTrue ("After pressing a key, focus owner should still be the table, not " + owner, sheet.table == owner);
    }

}