import javax.swing.*;
import javax.swing.text.DefaultEditorKit;
import javax.swing.text.JTextComponent;
import javax.swing.text.TextAction;
import java.awt.event.InputEvent;
import java.awt.event.KeyEvent;
public class PopupMenu {
private JMenu jMenu;
JPopupMenu popupMenu = new JPopupMenu();
public PopupMenu() {
init();
}
private void init() {
jMenu = new JMenu("Edit");
addAction(new DefaultEditorKit.CopyAction(), KeyEvent.VK_A, "Select All");
addAction(new DefaultEditorKit.CopyAction(), KeyEvent.VK_C, "Copy");
addAction(new DefaultEditorKit.CutAction(), KeyEvent.VK_X, "Cut");
addAction(new DefaultEditorKit.PasteAction(), KeyEvent.VK_V, "Paste");
}
private void addAction(TextAction action, int key, String text) {
action.putValue(AbstractAction.ACCELERATOR_KEY,
KeyStroke.getKeyStroke(key, InputEvent.CTRL_DOWN_MASK));
action.putValue(AbstractAction.NAME, text);
jMenu.add(new JMenuItem(action));
popupMenu.add(new JMenuItem(action));
}
public void setPopup(JTextComponent... components) {
if (components == null) {
return;
}
for (JTextComponent tc : components) {
tc.setComponentPopupMenu(popupMenu);
}
}
public JMenu getMenu() {
return jMenu;
}
}
The way to use:
PopupMenu popupmenu = new PopupMenu();
popupmenu.setPopup(txtTextField);
Pages
- Home
- Java JasperReport Print JTable Content
- iReport 5.6 Install On MacOS
- PHP Pager
- Java JLable Set Image
- Java Read XML Settings File
- Apple MacOS High Sierra Installation Errors
- Java Read Directory Content
- MySQL Inner Join
- WinRAR Super Compression
- Install Windows 10 from a USB Flash Drive
- Java Classpath Directory
- Java Class To Keep Some Static Variables As A Simp...
- Java Copy Paste
- Java Change Cusor
- Java Read File In To Text Area
- Java Open Any Directory
- Java Open Current Directory
- Java Regex Address
- Java Regex Email
- Java Regex Letters
- Java Regex Name
- Java Text Is Not Empty
- Java Regex AlphaNumeric
- Java Regex Numeric
- Java Combo Box Auto Complete
- Java jFrame Icon
- Java Layout Align Center
- Java JTable Quick Load Heavy Data With Handler Cla...
- Java JTable Column Text Align
- Java JTable Remove Table Headers
- Java JTable Renderer
- Java JTable Search Filter
- Java Log File Writer
- Java MD5 Of A File
- Java MD5 Of A String
- Java BigDecimal
- Java Comma Seperated Numbers
- Java JPasswordField Text Read
- Java Text Fields Auto Select All On Focus
- Java Time As 12h
- Java Time As 24h
- Java Time Current Time Stamp
- Java Util Class
- Java View Pdf
- Java JFrame Maximize
- Java Xml Read With Dom4j
- Java MySQL JDBC Basic Class
- Java MySQL Backup Local
- Java MySQL Backup Online To DropBox API v2
- Java JasperReport Print Directly Without View
- Java JasperReport Print Long Bills With Virtualize...
- Java JasperReport Export To PDF
- Java JasperReport Export To Excel
- Java JasperReport Using All Features
- Java GMail Send Attachment
- MySQL Return 0 If No Data
- Center Aligned JPanel
- Java Splash/Loading Screen
Subscribe to:
Posts (Atom)
No comments:
Post a Comment