2013-11-26 68 views

回答

0

我已經使用了彈出菜單。這裏是顯示在正確位置彈出的代碼。您 可以試試這個...

ContextMenu popup=new ContextMenu(); 
MenuItem itemAdd=new MenuItem("Add/Edit"); 
MenuItem itemDel=new MenuItem("Delete"); 
popup.getItems().add(itemAdd);   
popup.getItems().add(itemDel);  


txtBox.setOnMouseClicked(new EventHandler<MouseEvent>() { 
@Override 
public void handle(MouseEvent t) 
{ 
    txt=(TextBox)t.getSource(); 
    if(t.getButton()==MouseButton.SECONDARY) 
    { 
     popup.show(txt,t.getScreenX(),t.getScreenY());     
    } 
} 
+0

getScreenX(),getScreenY()方法僅MouseEvent類是可用的。如何從keyEvent或ActionEvent獲取座標? – developer

+0

您將無法從keyEvent或ActionEvent獲取getScreenX(),getScreenY()座標,因此您必須手動計算座標。 –

+0

假設您試圖在任何文本框中彈出,那麼您必須計算該文本框的座標。 –