Java Swing 编程 JComboBox 实现模糊查找功能。
废话不多说,直接上代码。代码如下:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*; public class JComboBoxTest extends JFrame implements KeyListener {
private JComboBox cbx;
private JTextField jtf;
public JComboBoxTest() {
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
Container c = getContentPane();
c.setLayout(null);
cbx = new JComboBox(getItems());
cbx.setEditable(true);
cbx.setBounds(20, 20, 80, 20);
jtf = (JTextField)cbx.getEditor().getEditorComponent();
jtf.addKeyListener(this);
c.add(cbx);
setVisible(true);
} public void keyPressed(KeyEvent e) {}
public void keyTyped(KeyEvent e) {}
@SuppressWarnings("unchecked")
public void keyReleased(KeyEvent e) {
Object obj = e.getSource();
if (obj == jtf) {
String key = jtf.getText();
cbx.removeAllItems();
for (Object item : getItems()) {
if (((String)item).startsWith(key)) { //这里是包含key的项目都筛选出来,可以把startsWith改成contains就是筛选以key开头的项目
cbx.addItem(item);
}
}
jtf.setText(key);
}
}
public Object[] getItems() {
return new Object[] {
"abcd", "acdef", "cdefg", "defg"
};
}
public static void main(String[] args) {
new JComboBoxTest();
}
}
原创不易,欢迎打赏。

Java Swing 编程 JComboBox 实现模糊查找功能。的更多相关文章
- Java Swing 编程 JComboBox 显示不全问题。
最近在做Java Swing编程一个小例子.然后遇到JComboBox 宽度固定,而下拉列表比较长,导致显示不全的问题. 解决的思路想到两种,1:下拉列表当显示不全的时候,换行显示.2:在下拉列表停几 ...
- Java Swing编程接口(30)---列表框:JList
列表框同时可以在信息呈现给用户的列表多个选项,使用JList能够建立一个列表框. package com.beyole.util; import java.awt.Container; import ...
- Java Swing 快捷键
Java Swing 快捷键 给Java Swing 编程中按钮或者其他组件事件添加快捷键的方法: Component.setAccelerator(KeyStroke.getKeyStroke(‘ ...
- java swing 添加 jcheckbox复选框
总体上而言,Java Swing编程有两大特点:麻烦.效果差. 麻烦是说由于设计器的使用不方便(如果您希望使用窗体设计器通过快速拖拽控件建立您的Java Swing GUI程序,请您使用MyEclip ...
- java swing 开发 -JTable
最近利用空闲时间自己琢磨了一下java swing 编程,其实在从事javaweb之前我一直向往的就是java swing 开发,不知道为什么可能当时觉得Windows上的exe程序很是神奇,关于wi ...
- Java Socket编程题库
一. 填空题 ___ IP地址____用来标志网络中的一个通信实体的地址.通信实体可以是计算机,路由器等. 统一资源定位符URL是指向互联网"资源"的指针,由4部分组成:协议 ...
- Java swing: 实现ActionListener监听器的三种途径
Swing是目前Java中不可缺少的窗口工具组,是用户建立图形化用户界面(GUI)程序的 强大工具.Java Swing组件自动产生各种事件来响应用户行为.如当用户点击按钮或选择菜单项目时,Swing ...
- Java swing JFrame用repaint出现闪烁的问题解决
这几天用swing写登录页面背景动图的时候发现一直会有闪烁(我的类是继承JFrame),就来搜原因后发现好像是因为repaint会调用update()方法中的清屏操作导致闪烁. 我当时看的是这个文章 ...
- Java GUI编程中AWT/swing/SWT的优缺点
http://www.cnblogs.com/dugang/archive/2010/10/22/1858478.html AWT AWT是Abstract Window Toolkit(抽象窗口工具 ...
随机推荐
- Python 库/模块的安装、查看
关于如何查看本地python类库详细信息的方法 关于如何查看本地python类库详细信息的方法 - 小白裸奔 - CSDN博客 python -m pydoc -p 1234 help('module ...
- python高级编程和算法
import copy #a = ("a","b","c") #a = ["a","b"," ...
- 第一模块:Python基础(二)
目录 1.变量 常量 2.用户交互和注释 程序交互 注释 字符串 布尔型(bool) 格式化输出 运算符 while 循环 @(开发基础) 1.变量 变量用于存储要在计算机程序中引用和操作的信息.它们 ...
- 浅析redis缓存 在spring中的配置 及其简单的使用
一:如果你需要在你的本地项目中配置redis.那么你首先得需要在你的本地安装redis 参考链接[http://www.runoob.com/redis/redis-install.html] 下载r ...
- 二、docker的安装和基本命令
一.docker的安装 1.安装依赖 # yum install -y yum-utils device-mapper-persistent-data 2.设置yum源 # yum-config-ma ...
- 【tensorflow】学习笔记
1.tensorflow中dynamic_rnn和rnn有什么区别? 在tensorflow中没有找到rnn这个方法难道是废弃掉了? rnn是静态图,比如有10个时间序列,那么它将全部展开,并且 ...
- Tomcat系列(2)——Tomcat文件目录7个
核心部分 bin (运行脚本) conf (配置文件) lib (核心库文件) logs (日志目录) temp (临时目录) webapps (自动装载的应用程序的目录) work (JVM临时文件 ...
- 模仿OpenStack写自己的RPC
在openstack中使用两种通信方式,一种是Restful API,另一种是远程过程调用RPC.本片文章主要讲解openstack中RPC的使用方式,以及如何在我们自己的架构中使用RPC. 在我前面 ...
- VMware 安装虚拟机系统
Ø 简介 本文主要介绍使用 VMware 安装虚拟机系统. 1. 创建虚拟机 1) 打开VMware,创建新虚拟机 2) 选择需要安装系统的iso镜像文件 3) 选择需要安装的Win ...
- 非阻塞connect:Web客户程序
一.web.h #include <stdio.h> #include <netdb.h> #include <errno.h> #include <fc ...