Java Swing 编程 JComboBox 显示不全问题。
最近在做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 显示不全问题。的更多相关文章
- Java Swing 编程 JComboBox 实现模糊查找功能。
废话不多说,直接上代码.代码如下: import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util ...
- Java导出防止小数显示不全工具类
1.说明 在做项目的过程中,发现导出功能中的数据显示不全,如"0.4",会显示成".4":"-0.8"会显示成"-.8" ...
- 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: 实现ActionListener监听器的三种途径
Swing是目前Java中不可缺少的窗口工具组,是用户建立图形化用户界面(GUI)程序的 强大工具.Java Swing组件自动产生各种事件来响应用户行为.如当用户点击按钮或选择菜单项目时,Swing ...
- java swing 开发 -JTable
最近利用空闲时间自己琢磨了一下java swing 编程,其实在从事javaweb之前我一直向往的就是java swing 开发,不知道为什么可能当时觉得Windows上的exe程序很是神奇,关于wi ...
- Java swing JFrame用repaint出现闪烁的问题解决
这几天用swing写登录页面背景动图的时候发现一直会有闪烁(我的类是继承JFrame),就来搜原因后发现好像是因为repaint会调用update()方法中的清屏操作导致闪烁. 我当时看的是这个文章 ...
- Java面向对象笔记 • 【第10章 Swing编程初级应用】
全部章节 >>>> 本章目录 10.1 JFrame窗口容器 10.1.1 Swing介绍 10.1.2 JFrame窗口容器应用 JFrame常用方法 10.1.3 实践 ...
随机推荐
- java文件运行的过程
javac .java——>编译成.class文件(字节码) 参考: https://www.cnblogs.com/yxwkf/p/3855363.html https://www.jians ...
- python之路day09--函数
s='金老板啊'print(len(s)) #内置函数 s='金老板啊'# def my_len():# i=0# for k in s:# i+=1# # print(i)# print(my_le ...
- 升级AndroidStudio3.4问题汇总
1.Could not get unknown property 'bootClasspath' for object of type org.gradle.api.tasks.compile.Com ...
- halcon+WinForm打开摄像头
注意引用halcon.dll,项目属性平台一致(X64) using HalconDotNet;//引用halcon using System.Threading;//引用线程 namespace M ...
- Python的优势及应用领域
Python的优势 Python是一门解释型语言,是比较容易入门. Python的程序代码更接近英语,更好好理解. Python的扩展库非常丰富. Python与C的粘合性非常好. Python的缺点 ...
- SVN状态说明
svn status查看工作副本中目录与文件的状态 命令格式:svn status [PATH](简写:svn st) 打印工作拷贝中文件和目录的状态. svn st|grep ^状态(获得某状态文件 ...
- Dynamics CRM 日常使用JS整理(二)
BPF(Business Process Flow)相关的JS 为Stage添加changed或者selected事件: function fnOnLoad() { Xrm.Page.data.pro ...
- 强连通分量(Kosaraju)
//P2002解题思路: //先求SCC,缩点后,转换为DAG(有向无环图) //在DAG上统计入度为0的scc数量即可 //Kosaraju时间复杂度:O(N+E) //两次DFS,2N,图的转置E ...
- HBase基本概念与基本使用
1. HBase简介 1.1 什么是HBase HBASE是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBASE技术可在廉价PC Server上搭建起大规模结构化存储集群. HBASE ...
- CSS定位 深入理解定位(position)的偏移
前言 CSS有三种基本的布局机制:普通流.浮动和绝对定位.利用定位,可以准确地定义元素框相对于其正常位置应该出现的位置,或者相对于父元素.另一个元素甚至浏览器窗口本身的位置.但元素究竟如何定位,定位到 ...