Question: TASK: It would be nice to be able to directly tell the panel to go into wait mode in the same way that the panel'snotifymethod
TASK: It would be nice to be able to directly tell the panel to go into wait mode in the same way that the panel'snotifymethod is called. (i.e.notifyis called directly on the panel, whereaswaitis called indirectly through thesuspendedattribute.) Try altering the theactionPerformedmethod of theSliderListenerinner class in theCircleFrameclass as follows, and see what happens:
... if (!CircleFrame.this.slider.getValueIsAdjusting()) { // Update the delay when the slider stops moving. final int speed = CircleFrame.this.slider.getValue(); if (CircleFrame.this.circlePanel.isSuspended() && speed > 0) { // Restart the circle resizing. synchronized (CircleFrame.this.circlePanel) { // Remove thread from wait() CircleFrame.this.circlePanel.notify(); } } else if(speed == 0) { // Attempt to call 'wait' directly on the running object. CircleFrame.this.circlePanel.wait(); } CircleFrame.this.circlePanel.setSpeed(speed); } ...
TASK: In theSpawnViewclass, redefine thethreadPoolattribute as:
private final ExecutorService threadPool = Executors.newFixedThreadPool(4);
What happens when you spawn more than four circle windows? What happens if you close any of the first four windows?
TASK: Add one or more new buttons to change the color of the circle to a new color.
I was not able to add the zip files, so instead I have attached images to this question.
CircleFrame.java












\f\f\f\f\f\f\f\f\f\f\f\f
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
