java 引入监听、事件一个难题import java.awt.event.ActionEvent; import java.awt.event.ActionListener;

java 引入监听、事件一个难题import java.awt.event.ActionEvent; import java.awt.event.ActionListener;,第1张

javaawt那这个说一下吧。
这个是说当前awt包目录下所有的类,但是不包括awt目录下子包里面的类。
如果要调用事件处理方面的类,再需导入awt的子包,也就是import javaawtevent;

import javaawteventActionEvent;
import javaawteventActionListener;

这两句可以合成一句,也就是import javaawtevent;
一个星号的含义就是把该目录下所有的类全部导入(但是不导入子包,它们可以继续休息)。

如果sun公司允许导入一个包就是连同改包下面的类和子包都导入的话,那么我们编程直接一下import java;就可以了。

这个可以用MouseListener来监听。
tableaddMouseListener();

//括号内的东西根据实际填写
……
public
void
mouseClicked(MouseEvent
e)
{
int
index=tablegetSelectedRow();
String
code=(String)tablegetValueAt(index,0);//这一句是取出表格选中那行的第一列
text1setText(code);
//其他列的数据类似,不逐一说明,自己研究即可。
}

import javaawt;
import javaxswing;
import javaawtevent;

class ziti implements KeyListener
{JFrame jf;
JComboBox jc;
String[] kk={"隶书","楷体","黑体","宋体"};
String str="隶书"; int k1=FontPLAIN; int k2=16;

ziti()
{jf=new JFrame("字体事件测试");
jc=new JComboBox(kk)
Container co=jfgetContentPane();
JPanel pp=new JPanel();
coadd(pp);
ppsetLayout(null);
ppadd(jc
jfsetSize(400,500);
jfsetLocation(50,50);
jfsetVisible (true);

jcsetBounds(10,100,100,30);
jcaddKeyListener(this);
}
public void keyTyped(KeyEvent e)
{ str=kk[jcgetSelectedIndex()];
}
public void keyPressed(KeyEvent e){}
public void keyReleased(KeyEvent e){}

}
public class cv1
{public static void main(String[] args)
{ new ziti();
}
}
基本上就是这么写的 里面加你要写的就好咯 有什么问题你可以追问

Java接口使用interface声明,接口用于约定对象的行为。使用接口实现事件监听,可以定义一个如下的一个接口:
public interface Listener {
void on(Object event)
}

/
树形目录
/
import javaawtDimension;
import javaawtToolkit;
import javaxswingImageIcon;
import javaxswingJFrame;
import javaxswingJTree;
import javaxswingUIManager;
import javaxswingeventTreeSelectionEvent;
import javaxswingeventTreeSelectionListener;
import javaxswingtreeDefaultMutableTreeNode;
import javaxswingtreeDefaultTreeCellRenderer;
class MM
{
String name;
int i;
MM(String name,int i)
{
thisname=name;
thisi=i;
}
public String toString()
{ //返回name为srting型,没有也不会出错啊楼主。
return name;
}
}
public class JTreeTest extends JFrame implements TreeSelectionListener
{
/

/
private static final long serialVersionUID = 1L;
String str[];
JTree tree;
Object object[]={"aa","bb","cc","dd","ee","ff"};
DefaultMutableTreeNode root0,node[],root1[];//定义节点
Toolkit tool;//Toolkit这个类封装了一些系统相关的数据,通过它可以得到这些数据;
public JTreeTest()
{
try
{
UIManagersetLookAndFeel(UIManagergetSystemLookAndFeelClassName());
}
catch (Exception e)
{
eprintStackTrace();
}
root0=new DefaultMutableTreeNode("根目录");//定义了树形目录的根节点
node=new DefaultMutableTreeNode[6];//定义了6个节点
root1=new DefaultMutableTreeNode[6];//定义了6个节点(这里还不能确定哪个是二级节点哪个是三级节点,要开后面添加的顺序)
tool=ToolkitgetDefaultToolkit();
Dimension screen=toolgetScreenSize();//Dimension 类封装单个对象中组件的宽度和高度(精确到整数)。
int x=screenwidth;//获取屏幕的宽
int y=screenheight;//获取屏幕的高
/
for循环就是把之前定义的节点赋值。并且把root1[j]添加为node[i]的子节点
/
for(int i=0;i<=5;i++)
{
node[i]=new DefaultMutableTreeNode("第1级目录");
for(int j=0;j<=4;j++)
{
root1[j]=new DefaultMutableTreeNode(new MM("第"+i+"个同学",(int)(Mathrandom()100)));//root1节点是一个类MM的实例,包含名字和随机数
//root1[j]add(new DefaultMutableTreeNode("第3级目录"));
node[i]add(root1[j]);
}
root0add(node[i]);//root0(根把node[i]添加为子节点):这样就形成了root0-->node[i]--->root1[j]的树形结构了
}

root0add(node[0]);//
tree=new JTree(root0);
treesetOpaque(false);//setOpaque(true);设置控件不透明;setOpaque(false);设置控件透明
treesetAutoscrolls(true);
treeaddTreeSelectionListener(this);//添加事件监听器
/
设置tree展开,关闭时的
/
DefaultTreeCellRenderer ren=new DefaultTreeCellRenderer();
rensetOpenIcon(new ImageIcon("res/(05,18)png"));
rensetClosedIcon(new ImageIcon("res/(03,23)png"));
rensetDisabledIcon(new ImageIcon("res/(03,39)png"));
treesetCellRenderer(ren);
add(tree);//没有这句的话无法显示树
setTitle("树组件测试……");//这个GUI界面的标题
setVisible(true);
setBounds((x-200)/2, (y-300)/2, 200, 300);//设置大小
setDefaultCloseOperation(JFrameEXIT_ON_CLOSE);
}
/
处理事件
/
public void valueChanged(TreeSelectionEvent e)
{
DefaultMutableTreeNode node=(DefaultMutableTreeNode)treegetLastSelectedPathComponent(); //获取鼠标点击到的节点
if(nodeisLeaf())//判断是不是叶子节点,就是这里的root1[j]
{
//是叶子节点的话就进行 *** 作
MM mm=(MM)nodegetUserObject();
Systemoutprintln(mmname+":"+mmi);//打印出节点名称,和对应的随机数i
}
}
public static void main(String[] args)
{
new JTreeTest();
}
}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13329951.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-16
下一篇 2023-07-16

发表评论

登录后才能评论

评论列表(0条)

保存