我几周前刚开始接触java,我有一个小问题。我没有编程经验,我现在所做的就是在网上搜索一些小教程之类的。我目前正在使用awt处理一些事件,我发现自己在网上有一个可以处理的java类。
无论如何,当鼠标被移动/点击/按下时,我尝试使用MouseEvent函数/接口来做一些事情,特别是在框架内。在本例中,ClickCounter()是frame类。
public ClickCounter() {
this.addMouseListener(this);
public void mouseClicked(MouseEvent ae) {
clicks++;
String s = Integer.toString(clicks);
objTextField.setText("Clicks:" + s);
}
ClickCounter.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent we) {
System.exit(0);
}
});
ClickCounter.setSize(2000, 2000);
ClickCounter.setVisible(true);
TextField objTextField = new TextField(100);
objTextField.setBounds(0, 0, 500, 500);
objTextField.setText("Click here and I will count the number of times you click");
ClickCounter.add(objTextField);
}一团糟,我知道。正如您在前几行看到的那样,我向CLickCounter()添加了一个鼠标侦听器,并添加了一个侦听器来检查框架内的点击。当我尝试编译这个程序时,我得到的结果是:
ClickCounter.java:9:错误:表达式的开始非法
public void mouseClicked(MouseEvent evt) {
^ClickCounter.java:9:错误:表达式的开始非法
public void mouseClicked(MouseEvent evt) {
^ClickCounter.java:9:错误:应为';‘
public void mouseClicked(MouseEvent evt) {
^ClickCounter.java:9:错误:应为';‘
public void mouseClicked(MouseEvent evt) {
^4个错误
据我所知,系统甚至不能将该行识别为事件侦听器。我是不是把我的语法搞乱了?
发布于 2013-08-13 23:27:15
在Java中,不能直接在另一个方法中定义方法。在本例中,您直接在另一个方法(称为constructor的特殊方法) ClickCounter()中定义mouseClicked()方法。
我建议在继续学习之前先学习一下基本的Java tutorial。至少让你自己对语法感到满意。
https://stackoverflow.com/questions/18213142
复制相似问题