⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jimagedcombobox.java

📁 具有Ftp的基本功能
💻 JAVA
字号:
package FtpLocalSource;
import java.awt.Component;
import java.util.Vector;
import javax.swing.BorderFactory;
import javax.swing.DefaultListCellRenderer;
import javax.swing.JComboBox;
import javax.swing.JList;
import javax.swing.ListCellRenderer;

/**
 * 此类继承JComboBox,实现接口ListCellRenderer用于创建一个以带图标和文本为单元的下拉菜单。
 * @author 张永结
 *
 */
public class JImagedComboBox extends JComboBox 
{ 
	/**
	 * 构造包含指定Vector中的元素的JImagedComboBox。
	 * @param values 用于构造JImagedComboBox元素值。
	 */
	public JImagedComboBox(Vector values)
	{ 
		super(values); 
		ListCellRenderer renderer = new DefaultListCellRenderer()
		{ 
			/**
			 * 实现接口ListCellRenderer方法,返回绘制单元的组件。
			 */
			public Component getListCellRendererComponent(JList list,
					                                      Object value, 
					                                      int index, 
                                                          boolean isSelected, 
                                                          boolean cellHasFocus) 
			{ 
				super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus); 
				if(value instanceof ImagedComboBoxItem)
				{ 
					ImagedComboBoxItem item = (ImagedComboBoxItem)value; 
					this.setText(item.getText()); 
					this.setIcon(item.getIcon()); 
					if(isPopupVisible())
					{ 
						int offset = 10 * item.getIndent(); 
						this.setBorder(BorderFactory.createEmptyBorder(0, offset, 0, 0)); 
					} 
				} 
				return this; 
			} 
		};
		
		this.setRenderer(renderer); 
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -