簡體   English   中英

如何在Eclipse插件+ RCP中獲得用戶單擊的x和y位置

[英]How to get x and y position of user click in Eclipse plugin + RCP

我正在使用Eclipse開發使用JFace + RCP的電子郵件客戶端插件。 我沒有使用eclipse開發任何屏幕,郵件客戶端將是此插件的屏幕。

我想讓用戶點擊客戶端中的位置。

您可以使用DisplayaddFilter方法添加一個偵聽器,該偵聽器針對SWT代碼中的所有鼠標按下事件進行調用:

Display display = Display.getDefault();

display.addFilter(SWT.MouseDown, new Listener()
  {
    @Override
    public void handleEvent(Event event)
     {
       System.out.println("event " + event);

       if (event.widget instanceof Control) {
         Control control = (Control)event.widget;
         System.out.println("display " + control.toDisplay(event.x, event.y));
       }
     }
 });

傳遞給handleEventEvent具有鼠標按下事件的xy字段-這些是相對於包含該事件的控件的。 該控件在widget字段中給出。 我已經展示了將這些值轉換為絕對顯示值的代碼。

注意:這僅適用於當前應用程序中的鼠標按下事件,並且僅適用於SWT代碼。 過去,Lotus Notes使用了很多本機代碼,這些代碼無法正常工作,我不知道情況是否仍然如此。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM