java swing 文本框双击Ctrl,触发删除全部并黏贴
tc.addKeyListener(new KeyListener() { private long lastTimeMillSencond; @Override public void keyTyped(KeyEvent e) { } @Override public void keyReleased(KeyEvent e) { } @Override public void keyPressed(KeyEvent e) { if (EventHWUtil.isJustCtrlDown(e)) { if (lastTimeMillSencond == 0) { lastTimeMillSencond = System.currentTimeMillis(); } else { long currentTime = System.currentTimeMillis(); if (MenuUtil2.isDoubleClick(currentTime - lastTimeMillSencond)) { System.out.println("双击Ctrl"); String content = WindowUtil.getSysClipboardText(); if (ValueWidget.isNullOrEmpty(content)) { return; } tc.setText(content); tc.requestFocus(); lastTimeMillSencond = 0; } else { lastTimeMillSencond = System.currentTimeMillis(); } } } } });
见类: com/swing/component/TextCompUtil2.java
如何判断是否点击了Ctrl 呢?
public static boolean isJustCtrlDown(KeyEvent e) { int keyCode = e.getKeyCode(); return e.isControlDown() && keyCode != KeyEvent.VK_TAB && keyCode != KeyEvent.VK_QUOTE/*双引号*/ && keyCode != KeyEvent.VK_OPEN_BRACKET/*{*/ && keyCode != KeyEvent.VK_CLOSE_BRACKET/*}*/ && keyCode != KeyEvent.VK_COLON/*分号*/ && keyCode != KeyEvent.VK_PERIOD/*句号*/ && keyCode != KeyEvent.VK_COMMA/*逗号*/ && keyCode != KeyEvent.VK_AT/*@*/ && keyCode != KeyEvent.VK_2/*@*/ && keyCode == KeyEvent.VK_CONTROL; }
见类:com/swing/event/EventHWUtil.java
鼠标中间也是:删除全部并黏贴
/*** * 给文本框增加右键菜单. * * @param field2 */ public static JPopupMenu setPopupMenu(final JTextComponent field2,JPopupMenu textMenu1) { final JPopupMenu textMenu; if(ValueWidget.isNullOrEmpty(textMenu1)){ textMenu = new JPopupMenu(); }else{ textMenu=textMenu1; } field2.addMouseListener(new MouseInputListener() { @Override public void mouseMoved(MouseEvent e) { } @Override public void mouseDragged(MouseEvent e) { } @Override public void mouseReleased(MouseEvent e) { // super.mousePressed(e); if (e.getButton() == MouseEvent.BUTTON3) { // addPopupMenuItem(field2,textMenu); textMenu.show(e.getComponent(), e.getX(), e.getY()); }else if (e.getButton() == MouseEvent.BUTTON2){//鼠标中键 //按下鼠标中键,把剪切板内容黏贴到文本框中 String text=WindowUtil.getSysClipboardText(); if(!ValueWidget.isNullOrEmpty(text) &&!ValueWidget.isNullOrEmpty(field2)){ field2.setText(text); field2.setForeground(TextCompUtil2.DEFAULT_TF_FOREGROUND);//防止placeholder field2.requestFocus(); } } } @Override public void mousePressed(MouseEvent e) { } @Override public void mouseExited(MouseEvent e) { } @Override public void mouseEntered(MouseEvent e) { } @Override public void mouseClicked(MouseEvent e) { } }); return textMenu; }
见类:com/swing/menu/MenuUtil2.java
相关推荐
java swing 文本框自动补全示例,数据源默认当前系统字体,便于测试,单文件一看就懂...........
通过这种方式,我们可以轻松地在Java Swing应用中实现类似于iOS的文本框占位符效果,提高用户体验。在实际项目中,可以根据具体需求对代码进行扩展和优化,例如添加更多的样式控制或处理特殊情况。
在Java Swing中,`JTextField`是用于创建用户输入单行文本的组件,而`JPasswordField`则用于创建隐藏字符的密码输入框。在提供的代码片段中,我们看到`LoginFrame`类继承自`JFrame`,并包含了`JTextField`(用户名...
在Java Swing库中,用户界面(UI)组件是事件的源,它们能够触发多种类型的事件,这些事件通常与用户的交互、组件的状态变化或应用程序的内部操作相关。以下是对标题和描述中提到的Swing组件及其可能触发的事件的...
实现信息检索功能 像百度的网页搜索框 搜索相关资源并可以选择并显示搜索结果 使用JTable作为搜索结果显示框 在网上找不到相关的资源 自已写了一个 这只是提供一个思路 如果有更好的想法 可以联系我 蛋疼的 Java***...
swing 日期选择器 支持点击文本框选择 和自定义按钮选择
总的来说,Swing的Ctrl+S保存功能是通过监听键盘事件并关联到特定的保存操作来实现的,这使得用户能够方便快捷地保存他们的工作。同时,理解和利用Swing的源代码以及相关的工具类,可以帮助开发者更高效地构建具有...
在Swing界面设计方面,你需要创建JFrame作为主窗口,然后添加各种组件,如JButton(用于触发添加和查询操作)、JTextField(用户输入数据)和JTable(显示查询结果)。使用ActionListener监听按钮事件,当用户点击...
在Java的Swing库中,实现“点击下拉框自动填充文本框”的功能,涉及到Swing组件的交互、事件监听以及数据绑定的概念。这个功能在许多GUI应用中都非常常见,例如用户选择一个选项后,相应的文本框会自动更新为所选...
总的来说,"文本框日历"项目展示了如何在Java Swing环境中集成日历功能,并通过文本框显示选定的日期。这对于需要日期选择功能的桌面应用来说非常实用。开发者可以从源代码中学习到如何自定义Swing组件,以及如何...
1. **Swing组件**: Swing包含了许多组件,如JButton(按钮)、JLabel(标签)、JTextField(文本框)、JTextArea(多行文本框)、JComboBox(下拉框)、JCheckBox(复选框)、JRadioButton(单选按钮)等。...
java SWING做一个IP输入框,功能很好
Java Swing JTextField 文本框的代码示例 Java Swing JTextField 文本框是 Java Swing 库中的一种基本组件,用于编辑单行文本。下面是 Java Swing JTextField 文本框的代码示例和相关知识点说明。 概述 JTextField...
- `javax.swing.JChart`或自定义组件:由于Swing内置的组件并不直接支持柱状图,通常需要自定义组件或者使用第三方库如JFreeChart来绘制。 - 如果选择自定义,可以使用`(Graphics2D)`接口的绘图方法,如`drawRect...
Swing提供了JCalendar和JDatePicker这两个常用的日期选择组件,它们使得用户能够方便地在日历视图中选择日期,或者通过一个文本框和下拉小部件选择日期和时间。 1. **JCalendar**: 这是一个第三方组件,通常由`...
在Java编程中,文本框验证(Text Field Validation)是用户界面设计的重要环节,尤其是在开发桌面应用或Web应用时。文本框验证确保用户输入的数据符合预设的格式和规则,从而提高数据的准确性和系统的安全性。以下是...
在IT行业中,文本框内容隐藏是一个重要的议题,尤其是在网络安全、数据隐私和用户界面设计领域。文本框通常是网页或应用程序中用户输入数据的地方,如用户名、密码或其他敏感信息。隐藏文本框内容是为了保护用户数据...
swing中的jlist 代码中定义了两个jlist 从一个jlist双击列表项可以将该项从这个列表删除并添加至另外一个列表中去
以上代码中,`event.preventDefault()`防止表单的默认刷新页面行为,然后获取文本框的值,并根据需求进行验证。如果验证通过,使用`$.ajax`发送数据到服务器;否则,向用户显示错误提示。 在提供的压缩包文件...
本篇将深入讲解Swing的全部组建及其应用实例,包括事件处理和布局管理。 1. **组件(Components)**:Swing提供了一系列组件,如按钮(JButton)、文本框(JTextField)、标签(JLabel)、面板(JPanel)、滚动面板...