package ch12;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
/**
* Created by Jiqing on 2016/12/9.
*/
public class BindKeyTest {
JFrame jf = new JFrame("测试键盘绑定");
JTextArea jta = new JTextArea(5,30);
JButton jb = new JButton("发送");
JTextField jtf = new JTextField(15);
public void init() {
jf.add(jta); // 内容区域
JPanel jp = new JPanel();
jp.add(jtf);
jp.add(jb);
jf.add(jp, BorderLayout.SOUTH); // 加入输入框和按钮
Action sendMsg = new AbstractAction() {
@Override
public void actionPerformed(ActionEvent e) {
// 事件动作
jta.append(jtf.getText() + "\n");
jtf.setText("");
}
};
// 添加事件监听器,点击按钮发送
jb.addActionListener(sendMsg);
// 关联Ctrl+Enter和Send
jtf.getInputMap().put(KeyStroke.getKeyStroke('\n',java.awt.event.InputEvent.CTRL_MASK),"send");
jtf.getActionMap().put("send",sendMsg);
jf.pack();
jf.setVisible(true); // 显示组件
}
public static void main(String[] args) {
new BindKeyTest().init();
}
}
相关文章
- stream 提取某字段_java8从list集合中取出某一属性的值的集合案例
- Java 中 关于实现字符串反转的几种操作(CharAt6、append1、reverse3、法)(用户从键盘输入一个1~999判断回文)(StringBuffer和String区别简略介绍)
- Java如何获取数据库中的数据·案例
- 编写java程序:从键盘上读入一个学生成绩,存放在变量score中,根据score的值输出其对应的成绩等级。
- java中从键盘输入的三种方法
- RabbitMQ 优点和缺点- 消息可靠性:RabbitMQ 提供了持久化功能和消息确认机制,确保消息在各种情况下都能可靠地存储和处理。 灵活的路由:通过多种交换机类型和绑定规则,RabbitMQ 能够灵活地路由消息到指定的队列。 支持多种消息协议:实现了 AMQP 等(MQTT、STOMP)标准化、开放的消息队列协议,使其能够与多种语言编写的应用程序进行通信。 插件化扩展:RabbitMQ 提供了丰富的插件系统,可以通过插件扩展功能,如死信队列、压缩、追踪等。 高可用性:支持集群模式和镜像队列,确保服务的可用性 易用性和可管理性:提供了丰富的 API 和管理工具,以及多种客户端库和框架支持,易于集成和使用。 多语言支持:RabbitMQ 支持多种编程语言的客户端,包括 Java、Python、Ruby、C#、Node.js 等,方便开发人员集成到各种应用中。 高性能:在处理大量并发消息时表现出色。 广泛的社区支持:拥有庞大的开发者社区和丰富的文档资源。 劣势: 性能和吞吐量较低:相比于 Apache Kafka 等面向大数据流处理的消息队列系统,RabbitMQ 的吞吐量较低,不适合处理海量的实时数据流。RabbitMQ 的设计更注重消息的可靠性和灵活性,而非极高的吞吐性能。
- 浅谈JAVA GUI中,AWT与Swing的区别、联系及优缺点
- 在 Java 中,如何使用文件保存包含文字和数字的 Swing 表格?
- 线程高级应用-心得7-java5线程并发库中阻塞队列Condition的应用及案例分析
- Java Swing 如何实现记事本中“编辑”菜单下的 剪切,复制,粘贴,删除,全选 功能