最近在做Java Swing编程一个小例子。然后遇到JComboBox 宽度固定,而下拉列表比较长,导致显示不全的问题。

解决的思路想到两种,1:下拉列表当显示不全的时候,换行显示。2:在下拉列表停几秒后,悬浮框提示信息。

第一种找了很多方法都没有成功。因此选择了第二种,具体解决如下:

1.提示框类。

import java.awt.Component;
import javax.swing.JComboBox;
import javax.swing.JList;
import javax.swing.plaf.basic.BasicComboBoxRenderer; class JComboBoxRenderer extends BasicComboBoxRenderer
{
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected,
boolean cellHasFocus)
{
if (isSelected)
{
setBackground(list.getSelectionBackground());
setForeground(list.getSelectionForeground());
if (-1 < index)
{
list.setToolTipText((value == null) ? null : value.toString());
}
}
else
{
setBackground(list.getBackground());
setForeground(list.getForeground());
}
setFont(list.getFont());
setText((value == null) ? "" : value.toString());
return this;
}
}

2.JComboBox 增加 setRenderer 属性。

JComboBox comboBox = new JComboBox();
comboBox.setBounds(100, 159, 75, 24);
comboBox.addItem("测试测试测试测试测试");
comboBox.addItem("测试测试测试测试测试");
comboBox.setRenderer(new CustomComboBoxRenderer());
Panel.add(comboBox);

3.显示效果如下:

原创不易,多多打赏。

Java Swing 编程 JComboBox 显示不全问题。的更多相关文章

  1. Java Swing 编程 JComboBox 实现模糊查找功能。

    废话不多说,直接上代码.代码如下: import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util ...

  2. Java导出防止小数显示不全工具类

    1.说明 在做项目的过程中,发现导出功能中的数据显示不全,如"0.4",会显示成".4":"-0.8"会显示成"-.8" ...

  3. Java Swing编程接口(30)---列表框:JList

    列表框同时可以在信息呈现给用户的列表多个选项,使用JList能够建立一个列表框. package com.beyole.util; import java.awt.Container; import ...

  4. Java Swing 快捷键

    Java  Swing 快捷键 给Java Swing 编程中按钮或者其他组件事件添加快捷键的方法: Component.setAccelerator(KeyStroke.getKeyStroke(‘ ...

  5. java swing 添加 jcheckbox复选框

    总体上而言,Java Swing编程有两大特点:麻烦.效果差. 麻烦是说由于设计器的使用不方便(如果您希望使用窗体设计器通过快速拖拽控件建立您的Java Swing GUI程序,请您使用MyEclip ...

  6. Java swing: 实现ActionListener监听器的三种途径

    Swing是目前Java中不可缺少的窗口工具组,是用户建立图形化用户界面(GUI)程序的 强大工具.Java Swing组件自动产生各种事件来响应用户行为.如当用户点击按钮或选择菜单项目时,Swing ...

  7. java swing 开发 -JTable

    最近利用空闲时间自己琢磨了一下java swing 编程,其实在从事javaweb之前我一直向往的就是java swing 开发,不知道为什么可能当时觉得Windows上的exe程序很是神奇,关于wi ...

  8. Java swing JFrame用repaint出现闪烁的问题解决

    这几天用swing写登录页面背景动图的时候发现一直会有闪烁(我的类是继承JFrame),就来搜原因后发现好像是因为repaint会调用update()方法中的清屏操作导致闪烁. 我当时看的是这个文章 ...

  9. Java面向对象笔记 • 【第10章 Swing编程初级应用】

    全部章节   >>>> 本章目录 10.1 JFrame窗口容器 10.1.1 Swing介绍 10.1.2 JFrame窗口容器应用 JFrame常用方法 10.1.3 实践 ...

随机推荐

  1. python并发编程之多进程基础知识点

    1.操作系统 位于硬件与应用软件之间,本质也是一种软件,由系统内核和系统接口组成 和进程之间的关系是: 进程只能由操作系统创建 和普通软件区别: 操作系统是真正的控制硬件 应用程序实际在调用操作系统提 ...

  2. tar.gz,直接解压可用?还是需要编译安装?

    在linux搭建环境,下载的tar.gz安装包,有的直接解压就可以用,有的需要编译安装后才可用 怎么知道该怎么操作呢? 其实,tar -zxvf解压后,进入目录看README.md就知道答案了 另外, ...

  3. Ticwatch2_3G版省电优化

    设置 --> 网络与连接 --> 云消息同步(禁用) 设置 --> 声音与震动 --> 铃声与音量(静音) 设置 --> 声音与震动 --> 闹钟音量(静音) 设置 ...

  4. (八)控件介绍,QLable

    Radio单选框 默认互斥,加GroupBox进行分组可以解决这个 checkBox复选 ListWidget TableWIdget:有表头 #include "widget.h" ...

  5. mac下安装maven

    在mac下 使用 brew安装,brew install maven 查看maven版本 mvn -version 打开Terminal,输入以下命令,设置Maven classpath 添加下列两行 ...

  6. MFC:关联变量

    1. 对象(控制)变量(control) a. 数据类型:control 只能创建关联一次 b).    control 用来操控控件 c). 创建 control 变量:控件 -> 右击 -& ...

  7. prometheus 集群

    思路一 统一区域的监控目标,prometheus server两台监控相同的目标群体. 改变后 上面这个变化对于监控目标端,会多出一倍的查询请求,但在一台prometheus server宕机的情况下 ...

  8. netty和protobuf的使用

    一.什么是protobuf Protobuf是google的开源项目,全称是Google Protocol Buffers,它是一个与语言无关.平台无关.可扩展的结构化数据序列化机制,类似XML,但它 ...

  9. [源码分析]ReentrantLock & AbstractQueuedSynchronizer & Condition

    首先声明一点: 我在分析源码的时候, 把jdk源码复制出来进行中文的注释, 有时还进行编译调试什么的, 为了避免和jdk原生的类混淆, 我在类前面加了"My". 比如把Reentr ...

  10. 【Unity游戏开发】UGUI不规则区域点击的实现

    一.简介 马三从上一家公司离职了,最近一直在出去面试,忙得很,所以这一篇博客拖到现在才写出来.马三在上家公司工作的时候,曾处理了一个UGUI不规则区域点击的问题,制作过程中也有一些收获和需要注意坑,因 ...