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

📄 popupdatapickerui.java

📁 《j2ee开发全程实录》随书源码
💻 JAVA
字号:
package com.cownew.PIS.ui.ctrl.prompt;

import java.awt.Component;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;

import javax.swing.JButton;
import javax.swing.JComponent;
import javax.swing.plaf.ComponentUI;

public class PopupDataPickerUI extends ComponentUI
{
	protected PopupDataPicker dataPicker;

	protected JButton btnBrowse;

	private Component editor;

	protected boolean enabled;

	public PopupDataPickerUI()
	{
		super();
		enabled = true;
	}

	protected JButton createButton()
	{
		JButton jbutton = new JButton();
		jbutton.setText("...");
		jbutton.setFocusable(false);
		return jbutton;
	}

	protected void installListeners()
	{
		btnBrowse.addMouseListener(new MouseAdapter() {

			public void mouseClicked(MouseEvent e)
			{
				if (!btnBrowse.isEnabled())
				{
					//按钮不可用了还能响应事件,真是郁闷!
					return;
				}
				// ctrl+鼠标按下的时候清除选择的数据
				if (!e.isControlDown())
				{
					dataPicker.pickData();

				} else
				{
					dataPicker.clearData();
				}
			}

		});

	}

	public void installUI(JComponent jcomponent)
	{
		dataPicker = (PopupDataPicker) jcomponent;
		editor = dataPicker.getEditor();
		btnBrowse = createButton();
		installListeners();
		jcomponent.add(editor);
		jcomponent.add(btnBrowse);
		PopupDataPickerLayout layout = new PopupDataPickerLayout();
		layout.addLayoutComponent(PopupDataPickerLayout.COMP_EDITOR, editor);
		layout.addLayoutComponent(PopupDataPickerLayout.COMP_BUTTON, btnBrowse);
		dataPicker.setLayout(layout);
	}

	public void uninstallUI(JComponent jcomponent)
	{
		jcomponent.removeAll();
	}

	public boolean isEnabled()
	{
		return enabled;
	}

	public void setEnabled(boolean enabled)
	{
		this.enabled = enabled;
		btnBrowse.setEnabled(enabled);
		editor.setEnabled(enabled);
	}

}

⌨️ 快捷键说明

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