- 91
- 0
目的是实现一个具有切换圈圈颜色及标签内容的程序
package com.elyong.noway;
/**
* Created by ely ong on 2017/11/27.
*/
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class TwoButtons{
JFrame frame;
JLabel label;
public static void main(String[] args){
TwoButtons gui=new TwoButtons();
gui.go();
}
public void go(){
frame=new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JButton labelButton=new JButton("Change Label");
labelButton.addActionListener(new LabelListener());
JButton colorButton=new JButton("Change Circle");
colorButton.addActionListener(new ColorListener());
label=new JLabel("I'm a label");
MyDrawPanel drawPanel=new MyDrawPanel();
frame.getContentPane().add(BorderLayout.SOUTH,colorButton);
frame.getContentPane().add(BorderLayout.CENTER,drawPanel);
frame.getContentPane().add(BorderLayout.EAST,labelButton);
frame.getContentPane().add(BorderLayout.WEST,label);
frame.setSize(300,300);
frame.setVisible(true);
}
class LabelListener implements ActionListener{
public void actionPerformed(ActionListener event){
label.setText("Ouch!");
}
}
class ColorListener implements ActionListener{
public void actionPerformed(ActionListener event){
frame.repaint();
}
}
}
class MyDrawPanel extends JPanel{
public void paintComponent(Graphics g){
Graphics2D g2d=(Graphics2D) g;
int red=(int)(Math.random()*255);
int green=(int)(Math.random()*255);
int blue=(int)(Math.random()*255);
Color startColor=new Color(red,green,blue);
red=(int)(Math.random()*255);
green=(int)(Math.random()*255);
blue=(int)(Math.random()*255);
Color endColor=new Color(red,green,blue);
GradientPaint gradient=new GradientPaint(70,70,startColor,150,150,endColor);
g2d.setPaint(gradient);
g2d.fillOval(70,70,100,100);
}
}
报错:
Error:(32, 5) java: com.elyong.noway.TwoButtons.LabelListener不是抽象的, 并且未覆盖java.awt.event.ActionListener中的抽象方法actionPerformed(java.awt.event.ActionEvent)
Error:(37, 5) java: com.elyong.noway.TwoButtons.ColorListener不是抽象的, 并且未覆盖java.awt.event.ActionListener中的抽象方法actionPerformed(java.awt.event.ActionEvent) 0
打赏
收藏
点击回答
- 共 0 条
- 全部回答
-
一个人的独白 普通会员 1楼
Java内部类(Internal classes)是Java程序中的一个类,它是在类的作用域(包或类)中定义的。这种类的名称必须以包名开头。内部类不仅可以定义在当前包中,还可以在子包中定义。
以下是创建内部类的一些常见方法:
- 创建内部类:
java public class InternalClass { // 定义内部类的成员变量和方法 }- 使用内部类:
```java public class Main { public static void main(String[] args) { // 创建内部类的对象 InternalClass innerClass = new InternalClass();
// 使用内部类的方法 innerClass.myMethod(); }} ```
- 使用包中的内部类:
```java import java.util.ArrayList;
public class Main { public static void main(String[] args) { // 创建包中的内部类的对象 ArrayList
internalClasses = new ArrayList<>(); // 添加内部类对象到包中的内部类列表中 internalClasses.add(new InternalClass()); // 使用包中的内部类的方法 for (InternalClass innerClass : internalClasses) { innerClass.myMethod(); } }} ```
注意:内部类不能有继承关系。
更多回答
网站公告
- 扫一扫访问手机版
回答动态

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器更新之后。服务器里面有部分玩家要重新创建角色是怎么回事啊?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题函数计算不同地域的是不能用内网吧?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题ARMS可以创建多个应用嘛?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题在ARMS如何申请加入公测呀?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题前端小程序接入这个arms具体是如何接入监控的,这个init方法在哪里进行添加?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器刚到期,是不是就不能再导出存档了呢?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器的游戏版本不兼容 尝试更新怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器服务器升级以后 就链接不上了,怎么办?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器转移以后服务器进不去了,怎么解决?预计能赚取 0积分收益

- 神奇的四哥:发布了悬赏问题阿里云幻兽帕鲁服务器修改参数后游戏进入不了,是什么情况?预计能赚取 0积分收益
- 回到顶部
- 回到顶部
