2014-10-03 71 views
0

當我打開JFileChooser來選擇文件/目錄時,我知道您可以使用CTRL-V將文件路徑粘貼到文本字段中。另外,是否有一種方法可以在JFileChooser中右鍵單擊以顯示剪切/複製/粘貼的常用上下文菜單,以便我可以右鍵單擊並將文件路徑粘貼到文本字段中?在JFileChooser中啓用右鍵單擊

編輯:好的。我剛剛使用了Swing Utils類,並收到了以下值:

Jtextfield = javax.swing.plaf.metal.MetalFileChooserUI $ 3 [,0,0,0x0,invalid,layout = javax.swing.plaf.basic。 BasicTextUI此類$ UpdateHandler,alignmentX = 0.0,alignmentY = 0.0,邊界= javax.swing.plaf.BorderUIResource $ @ CompoundBorderUIResource 4fe7ab59,旗幟= 296,MAXIMUMSIZE =,=的minimumSize,首選大小=,= caretColor sun.swing.PrintColorUIResource [R = 51 ,G = 51,b = 51],disabledTextColor = javax.swing.plaf.ColorUIResource [R = 184,G = 207,b = 229],可編輯=真,裕度= javax.swing.plaf.InsetsUIResource [top = 0的左= 0,底部= 0,右= 0],selectedTextColor = sun.swing.PrintColorUIResource [R = 51,G = 51,b = 51],selectionColor設置= javax.swing.plaf.ColorUIResource [R = 184,G = 207,b = 229],columns = 35,columnWidth = 0,command =,horizo​​ntalAlignment = LEADING]

雖然我不確定從哪裏開始,但是我怎麼會將上下文菜單應用到這個值呢?

+0

添加選擇器組件的幾種方法顯示在這種可能的[重複](http://stackoverflow.com/q/25538213/230513)中。 – trashgod 2014-10-03 14:58:59

+0

@trashgod - 這不一定是選擇器組件。這僅僅是文本字段的右鍵單擊上下文菜單,以啓用文件路徑的剪切/複製/粘貼。 – angeltari11684 2014-10-03 15:11:04

+0

@ angeltari11684,JTextField不支持剪切/複製/粘貼上下文菜單。你需要自己創建。然後,您需要將文件添加到文件選擇器使用的文本字段中。要查找文本字段,可以使用[Swing Utils](http://tips4java.wordpress.com/2008/11/13/swing-utils/)類。 – camickr 2014-10-03 15:21:23

回答

2

我怎麼會應用上下文菜單到這個值?

與向任何組件添加彈出式菜單的方式相同。

在剪切/複製/粘貼的情況下,您可以利用DefaultEditorKit提供的操作。例如:

JPopupMenu menu = new JPopupMenu(); 
Action cut = new DefaultEditorKit.CutAction(); 
cut.putValue(Action.NAME, "Cut"); 
menu.add(cut); 
textField.setComponentPopupMenu(menu);