JAVA 对树形结构中图片的修改
package graphic;
import javax.swing.ImageIcon;
import javax.swing.JTree;
import java.awt.Component;
import javax.swing.tree.DefaultTreeCellRenderer;
import javax.swing.tree.DefaultMutableTreeNode;
/**
*
* @author bianzhiqi
* 具体方法的使用查看DefaultTreeCellRenderer的文档
*/
public class MyRenderer extends DefaultTreeCellRenderer{
private ImageIcon leafIcon;
private ImageIcon midIcon;
public MyRenderer(ImageIcon leafIcon,ImageIcon midIcon)
{
this.leafIcon=leafIcon;
this.midIcon=midIcon;
}
public Component getTreeCellRendererComponent(
JTree tree,
Object value,
boolean sel,
boolean expanded,
boolean leaf,
int row,
boolean hasFocus) {
super.getTreeCellRendererComponent(
tree, value, sel,
expanded, leaf, row,
hasFocus);
DefaultMutableTreeNode node=(DefaultMutableTreeNode)value;
if(leaf && leafIcon!=null) setIcon(leafIcon);
else if((isKeyword(node)||isSpecial(node)) && midIcon!=null) setIcon(midIcon);
else setIcon(null);
return this;
}
protected boolean isKeyword(DefaultMutableTreeNode node)
{
String value=node.toString();
if(value.equals("int") || value.equals("real")||value.equals("while")||
value.equals("write")||value.equals("if")||value.equals("else")||
value.equals("read") ||value.equals("else if")
)
return true;
else return false;
}
protected boolean isSpecial(DefaultMutableTreeNode node){
String value=node.toString();
if(value.equals("<")||value.equals("<>")||value.equals("=")||value.equals("=="))
return true;
else return false;
}
}
相关文档:
接触了JTAPI开发一段时间,刚开始接触时,非常头大,很多概念不好理解。 先列个框架,记录一下自己的学习过程。
一、JTAPI (Java Telephony API )
在JTAPI之前,每个公司都是各自的一套CTI开发接口。为了统一业界标准,SUN公司推出了jtapi标准接口。该接口定义了呼叫中心中的很多对象,如Address,Agen ......
趁着今天还有点精力,将刚刚学会的APPLET写出来。
感觉用记事本编辑程序太吃力,不过现在是处于学习阶段,先把基本的东西掌握了吧。
JAVA APPLET就是用JAVA语言编写的一些小应用程序,它们可以直接嵌入到网页中或者其他特定容器中,并产生特殊的效果。
JAVA APPLET程序不是将main方法作为入口。
第一个APPLET程序:
打 ......
package com.google.i_sales.service.data;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.HashSet;
import java.util.List;
import java.util.Locale;
import java.uti ......
第一,谈谈final, finally, finalize的区别。
final—修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为
abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声明时给定
......
一.选择题(每道题3分,共45分)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
(1)下列关于Java语言的特点,描述错误的是( &nb ......