[英]How to get x and y position of user click in Eclipse plugin + RCP
我正在使用Eclipse開發使用JFace + RCP的電子郵件客戶端插件。 我沒有使用eclipse開發任何屏幕,郵件客戶端將是此插件的屏幕。
我想讓用戶點擊客戶端中的位置。
您可以使用Display
的addFilter
方法添加一個偵聽器,該偵聽器針對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));
}
}
});
傳遞給handleEvent
的Event
具有鼠標按下事件的x
和y
字段-這些是相對於包含該事件的控件的。 該控件在widget
字段中給出。 我已經展示了將這些值轉換為絕對顯示值的代碼。
注意:這僅適用於當前應用程序中的鼠標按下事件,並且僅適用於SWT代碼。 過去,Lotus Notes使用了很多本機代碼,這些代碼無法正常工作,我不知道情況是否仍然如此。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.