展开

关键词

抽丝剥茧——观察者模式

「代码:」 JButton button = new JButton(); button.addActionListener(new ActionListener() { @Override 就是事件监听,监听按钮的点击行为,触发jsClick函数 接下来我们来自己实现一个观察者模式 先给一个场景:「自己实现一个按钮操作,通过观察者模式」 事件监听机制 //事件监听机制 interface ActionListener > list = new ArrayList<>(); public void addListener(ActionListener actionListener){ list.add (actionListener); } public void pressButton(){ ButtonEvent buttonEvent = new ButtonEvent (this); for (ActionListener actionListener : list) { actionListener.actionPerformed

15100

java Swing GUI 入门-切换布局

添加事件 向Button1中添加按钮事件以只显示panel1 card1button.addActionListener(new ActionListener() { } 向Button2中添加按钮事件以只显示panel2 向Button2中添加按钮事件以只显示panel3 card2Button.addActionListener(new ActionListener parentPanel.revalidate(); } }); card3Button.addActionListener(new ActionListener 完整代码 import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; ; private JButton button1; public CardLayout() { card1button.addActionListener(new ActionListener

34610
  • 广告
    关闭

    【玩转 Cloud Studio】有奖调研征文,千元豪礼等你拿!

    想听听你玩转的独门秘籍,更有机械键盘、鹅厂公仔、CODING 定制公仔等你来拿!

  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    比较Swing中三种注册事件的方法

    一、采用一个监听器多个if语句来实现 在这种方式下:我们要继承ActionListener接口,并且要实现actionPerformed方法。 public class Test_01 extends JFrame implements ActionListener { Test_01() { JPanel ()); button2.addActionListener(new Button2ActionListener()); } private class Button1ActionListener implements ActionListener{ public void actionPerformed(ActionEvent e) { System.out.println ("你按了按钮一"); } } private class Button2ActionListener implements ActionListener

    30860

    Java开发 一起来画画(源码)

    可以显示状态的按钮 import javax.swing.JToolBar;//工具栏 import java.awt.BasicStroke;//基本画笔 import java.awt.event.ActionListener , BasicStroke.JOIN_MITER); g.setStroke(bStroke); } }); strokeButton3.addActionListener(new ActionListener (forecolor);//画笔设置为前景色 canvas.repaint(); } }); foregroundButton.addActionListener(new ActionListener // TODO Auto-generated method stub System.exit(0); } }); clearMenuItem.addActionListener(new ActionListener = false; g.setColor(forecolor); } } }); shuiyinMenuItem.addActionListener(new ActionListener

    1.5K30

    java Swing GUI 入门-简易加法器

    添加事件操作 右键ADDButton Create Listener 在ADDButton函数中添加以下的事件 ADDButton.addActionListener(new ActionListener }); 右键MODButton Create Listener 在MODButton函数中添加以下的事件 MODButton.addActionListener(new ActionListener }); 右键CLEARButton Create Listener 在CLEARButton函数添加以下的事件 CLEARButton.addActionListener(new ActionListener 完整代码 import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; resultField.setText(result+""); } }); CLEARButton.addActionListener(new ActionListener

    25710

    Java 常用动作事件监听

    java.awt.Container; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener BorderLayout.SOUTH); JButton btn = new JButton("按钮"); centerP.add(btn); btn.addActionListener(new ActionListener JTextField it = new JTextField(10);//构造指定10列的新的JTextField centerP.add(it); it.addActionListener(new ActionListener JCheckBox jCheckBox = new JCheckBox("多选框"); centerP.add(jCheckBox); jCheckBox.addActionListener(new ActionListener JComboBox jComboBox = new JComboBox(val); centerP.add(jComboBox); jComboBox.addActionListener(new ActionListener

    73820

    TextField和Graphics类

    setBackground(Color c) void select(int selectionStart,int selectionEnd) void selectAll() void addActionListener(ActionListener 与该事件对应的事件类是java.awt.event.ActionEvent 用来处理ActionEvent事件是实现了java.awt.event.ActionListener接口的类的对象,ActionListener 对象,当TextField对象发生Action事件时,会生成一个ActionEvent对象,该对象作为参数传递给ActionListener对象的actionPerformed方法在方法中可以获取该对象的信息 TFActionListener()); pack(); setVisible(true); } } class TFActionListener implements ActionListener tf.setEchoChar('*'); pack(); setVisible(true); } } class TFActionListener implements ActionListener

    26120

    Java开发GUI之Button控件 原

    .*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class ButtonTest addActionListener(new MyActionListener()); frame.pack(); frame.show(); } } class MyActionListener implements ActionListener addActionCommand方法对应,Button类中还有一些移除监听与获取监听者的方法,如下: //移除一个监听者 public synchronized void removeActionListener(ActionListener l); //获取监听者列表 public synchronized ActionListener[] getActionListeners(); //获取监听者列表 泛型数组 public <T extends getListeners(Class<T> listenerType); ActionEvent类中定义了交互行为的一些特征,示例如下: class MyActionListener implements ActionListener

    36630

    【JAVA】多线程学习

    .*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class WelcomeJFrame int MIN_PROGRESS = 0; final int MAX_PROGRESS = 100; Timer timer = new Timer(50, new ActionListener progressBar.setValue(currentProgress[0]); } }); jb1.addActionListener(new ActionListener (false); timer.start(); } }); jb2.addActionListener(new ActionListener int MIN_PROGRESS = 0; final int MAX_PROGRESS = 100; Timer timer = new Timer(50, new ActionListener

    20730

    Java实现动态数字时钟

    ."); jLabelTime.setFont(new Font("宋体", Font.BOLD, 30)); Timer timeAction = new Timer(1000, new ActionListener jPanelBeijing.add(jLabelTime); Button button = new Button("北京暂停"); button.addActionListener(new ActionListener 加载中."); jLabelTime.setFont(new Font("宋体", Font.BOLD, 30)); Timer timeAction = new Timer(1000, new ActionListener jPanelNewYork.add(jLabelTime); Button button = new Button("纽约暂停"); button.addActionListener(new ActionListener 加载中."); jLabelTime.setFont(new Font("宋体", Font.BOLD, 30)); Timer timeAction = new Timer(1000, new ActionListener

    25420

    Java6实现调用操作平台桌面系统

    import java.awt.Desktop; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import (IOException ex) { ex.printStackTrace(); } } }); button[1].addActionListener(new ActionListener (IOException ex) { ex.printStackTrace(); } } }); button[2].addActionListener(new ActionListener (IOException ex) { ex.printStackTrace(); } } }); button[3].addActionListener(new ActionListener (IOException ex) { ex.printStackTrace(); } } }); button[4].addActionListener(new ActionListener

    12600

    Java笔试真题及参考答案

    .*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class GuiDemo { ("关闭"); menuExit.add(close); //处理 "宋体" 菜单项的动作事件 song.addActionListener(new ActionListener Font.PLAIN, )); } }); //处理 "楷体" 菜单项的动作事件 kai.addActionListener(new ActionListener Font.PLAIN, )); } }); //处理 "关闭" 菜单项的动作事件 close.addActionListener(new ActionListener

    9040

    初学java之触发响应事件举例子

    .*; 6 class WindGrid extends JFrame{ 7 8 JTextField text; 9 ActionListener listener 35 } 36 } 1 package hello; 2 3 import java.awt.event.ActionEvent; 4 import java.awt.event.ActionListener ; 5 import javax.swing.*; 6 public class ReaderListen extends JFrame implements ActionListener 7

    66480

    Java进阶09 事件响应

    我们将动作放在一个监听器(ActionListener)中,然后让监听器监视(某个图形对象)的事件。当事件发生时,监听器中的动作随之发生。 ? as an inner class */ private class ColorAction implements ActionListener { public repaint(); } private Color backgroundColor; } } 上面,我们用一个内部类ColorAction来实施ActionListener ActionListener的actionPerformed()方法必须被覆盖。该方法包含了事件的对应动作。该方法的参数为事件对象,即监听ActionEvent类型的事件。 总结 ActionListener interface ActionEvent class

    39480

    java Swing GUI 入门-简易货币计算器

    public CurrencyConverter() { comboBox1.addActionListener(new ActionListener() { @ convertButton.addActionListener(new ActionListener() { @Override public void 完整代码 import javax.swing.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; private JLabel moneyTypeLabel; public CurrencyConverter() { comboBox1.addActionListener(new ActionListener comboBox1.getSelectedItem()); } }); convertButton.addActionListener(new ActionListener

    17520

    【Java】利用Swing实现简单的计算器 代码分享

    panel1.add(display); add(panel1,BorderLayout.NORTH); //面板2-中部 ActionListener command = new CommandAction();//command监听器 //CommandAction是实现接口ActionListener的一个类 panel2 add(panel3,BorderLayout.SOUTH); } //为面板2中的每个按钮注册监视器 public void addButton1(String label, ActionListener 给每个按钮注册监听器 panel2.add(button); } //为面板3中的每个按钮注册监视器 public void addButton2(String label, ActionListener button.addActionListener(listener); panel3.add(button); } class CommandAction implements ActionListener

    7720

    java 按钮复选框监听事件及恢复保存状态

    else{ panel.setBackground(Color.black); text.append("black \n"); } } } class ButtonListener implements ActionListener event){ panel.setBackground(Color.green); text.append("green \n");} } class Button2Listener implements ActionListener event){ panel.setBackground(Color.red); text.append("red \n");} } class Button3Listener implements ActionListener ); os.close(); }catch(IOException ex){ ex.printStackTrace();} } } class Button4Listener implements ActionListener

    94120

    Java基础之内部类

    .*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.util.Date; this.interval = interval; this.beep = beep; } public void start() { ActionListener new Timer(interval, listener); timer.start(); } public class TimePrinter implements ActionListener TalkingClock clock){ outer=clock } 当在start 方法中创建了TimerPrinter对象后,编译器就会将this引用传递给当前的语音时钟的构造器 ActionListener 即使是外部类类本身的其他的方法也不能访问 如下例所示: public void start() { class TimePrinter implements ActionListener

    9410

    new TypeToken<List>>(){}.getType() 是什么意思

    User>>(){} 匿名内部类常用在监听里面,比如我们给一个按钮加监听: JButton btn = new JButton("test"); btn.addActionListener(new ActionListener public void actionPerformed(ActionEvent e) { } }); btn.addActionListener() 方法接受的是一个 ActionListener 类型的对象,而 ActionListener 是一个接口,不能直接 new。 所以本来这里该写一个类实现ActionListener接口,然后给他传参为实现类对象, 但是太麻烦了,我们直接在这里创建了那个实现类,之所以叫匿名,就是因为new的时候实现为一个类就直接调方法了,根本没有给这个类取名

    16140

    扫码关注腾讯云开发者

    领取腾讯云代金券