getSystemClipboard()。getString()的输出不对...(javafx)

时间:2018-03-24 16:09:52

标签: java javafx clipboard

我通过鼠标突出显示文本,然后按Shift键显示包含剪贴板字符串的表单。

我的事件按shift会发送虚拟键(Ctr + C),然后我调用函数windowsclickandsee()从剪贴板中获取突出显示的文本。 但这是错误的。

例如:

在我的剪贴板中已经有一个字符串 - (" 1234")。

步骤1:我选择一个文本 - ("你好")并突出显示它。

第2步:我按shift

结果:

Toolkit.getDefaultToolkit().getSystemClipboard().getData(DataFlavor.stringFlavor)"1234"并按ctr V,我看到"hello"

我不明白。任何人都可以帮助我吗?

这是我的代码

    private void windowsclickandsee() 
    {         
      Platform.runLater(() -> {                                                         
          try {                 
              root = new StackPane();
              text= new TextArea();                                                                     
              String temp = (String) Toolkit.getDefaultToolkit()
                      .getSystemClipboard().getData(DataFlavor.stringFlavor);                
              root.getChildren().add(text);
              text.appendText("1 "+temp);
              Point p= MouseInfo.getPointerInfo().getLocation();
              Scene scene = new Scene(root,400, 350);
              primaryStage.setScene(scene);
              primaryStage.setX(p.x);
              primaryStage.setY(p.y);
              primaryStage.setAlwaysOnTop(true);
              primaryStage.show();
          } catch (UnsupportedFlavorException ex) {
              Logger.getLogger(Jnativehook.class.getName()).log(Level.SEVERE, null, ex);
          } catch (IOException ex) {
              Logger.getLogger(Jnativehook.class.getName()).log(Level.SEVERE, null, ex);
          }        
      });         
    } 

0 个答案:

没有答案