下面是一个Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用Swing的构件建立图形用户界面。主要包括一个文本区域,用于显示计数器结果:两个按钮,一个使计数器暂停,一个使计数器继续工作。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。源程序文件代码清单如下。import javax.swing.*;import java.awt.*;import java.awt.event.*;/*<applet code="ex19_3.class" width=800 height=400></applet>*/public class ex19_3 extends JApplet{private JTextField jtf=new JTextField(15);private JButton Hold=new JButton("Hold");private JButton resume=new JButton("Resume");private ex19_3th obj19_3th=new ex19_3th();class ex19_3th extends Thread{private int cnt=0;private boolean bIsHold=false;public ex19_3th() {start();}public void hold(){bIsHold=true;}public synchronized void fauxResume(){bIsHold=false;wait ();}public void run(){while (true){try {sleep(150);synchronized(this){while(bIsHold)notify();}}catch(InterruptedException ie){System.err.println("Interrupted");}jtf.setText(cnt);}}}public void init(){Container cp=getContentPane();cp.setLayout(new FlowLayout());cp.add(jtf);Hold.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent ae){obj19_3th.hold ( );}});cp.add(Hold);resume.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent e){obj19_3th.fauxResume();}&n

下面是一个Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用Swing的构件建立图形用户界面。主要包括一个文本区域,用于显示计数器结果:两个按钮,一个使计数器暂停,一个使计数器继续工作。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。

注意:不改动程序的结构,不得增行或删行。

源程序文件代码清单如下。

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

/*

<applet code="ex19_3.class" width=800 height=400>

</applet>

*/

public class ex19_3 extends JApplet

{

private JTextField jtf=new JTextField(15);

private JButton Hold=new JButton("Hold");

private JButton resume=new JButton("Resume");

private ex19_3th obj19_3th=new ex19_3th();

class ex19_3th extends Thread

{

private int cnt=0;

private boolean bIsHold=false;

public ex19_3th() {start();}

public void hold()

{

bIsHold=true;

}

public synchronized void fauxResume()

{

bIsHold=false;

wait ();

}

public void run()

{

while (true)

{

try {

sleep(150);

synchronized(this)

{

while(bIsHold)

notify();

}

}catch(InterruptedException ie)

{

System.err.println("Interrupted");

}

jtf.setText(cnt);

}

}

}

public void init()

{

Container cp=getContentPane();

cp.setLayout(new FlowLayout());

cp.add(jtf);

Hold.addActionListener(

new ActionListener()

{

public void actionPerformed(ActionEvent ae)

{

obj19_3th.hold ( );

}

});

cp.add(Hold);

resume.addActionListener

(

new ActionListener()

{

public void actionPerformed(ActionEvent e)

{

obj19_3th.fauxResume();

}

&n


相关考题:

在加计数器的设置输入S的(),将预置值PV指定的值送入计数器字。在加计数脉冲CU的(),如果计数值小于(),计数值加1。复位输入端R为1时,计数值被()。计数值大于0时,计数器位(Q)为();计数值为0时,计数器位为()。

下面Applet程序,其功能是实现一个计数器,每隔0.15秒计数器数值加1,数值动态变化,并且能够控制计数器的暂停和继续。要求通过使用swing的构件建立图形用户界面,主要包括一个文本区域,用于显示计数器结果;两个按钮,一个使计数器暂停,一个使计数器继续工作。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。注意:不改动程序的结构,不得增行或删行。程序运行结果如下:import javax.swing.*;import java.awt.*;import java.awt.event.*;/*<applet code="ex7_3.class" width=800 height=400 ></applet>*/public class ex7_3 extends JApplet {private JTextField jtf = new JTextField(15);private JButton Hold = new JButton("Hold"),resume = new JButton("Resume");private ex7_3th obj7_3th = new ex7_3th();class ex7_3th extends Thread {private int cnt = 0;private boolean bIsHold = false;public ex7_3th() { start(); }public void hold() {bIsHold = true;}public synchronized void fauxResume() {bIsHold = false;wait();}public void run() {while (true) {try {sleep(150);synchronized(this) {while (bIsHold)not i fy ( );}} catch(InterruptedException ie) {System.err.println("Interrupted");}jtf.setText(cnt);}}public void init() {Container cp = getContentPane();cp.setLayout(new FlowLayout());cp.add(jtf);Hold.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent ae) {obj7_3th.hold();}});cp.add(Hold);resume.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e){obj7_3th.fauxResume();}});cp.add(resume);public static void main(String[] args) {ex7_3 obj7_3=new ex7_3();String str= obi7_3.getClass().toString();if(str.indexOf("class") != -1)str= str.substring(6);JFrame. frm = new JFrame(str);frm.addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent we) {System.exit(O);}});frm.getContentPane().add(obj7_3);frm.setSize(300, 200);obj7_3.init();

一个三进制计数器和一个八进制计数器串接起来后的最大计数值是().A.5B.11C.23D.24

一个三进制计数器和一个八进制计数器串接起来后最大的计数值为()A.7B.19C.23D.31

二进制加法计数器是每输入一个时钟脉冲,计数器在原状态上加1;二进制减法计数器是每输入一个时钟脉冲,计数器在原状态上减1。

按照计数功能,计数值增序循环的计数器叫做()计数器。

计数器的计数值不等于0时,计数器位为();计数值为0时,计数器位为()。A.1,0B.1,1C.0,0D.0,1

一个三进制计数器和一个八进制计数器串联起来后的最大计数值为()A.5B.24C.23D.31

在定时器/计数器处于定时功能时,每过一个机器周期,计数器的数值加1。