Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.Color;
- import java.awt.Graphics;
- import java.awt.Graphics2D;
- import java.awt.Rectangle;
- import javax.swing.*;
- import java.awt.event.*;
- import java.awt.geom.Ellipse2D;
- import java.io.FileReader;
- import java.io.IOException;
- import java.util.Calendar;
- import java.util.Random;
- public class Reflexology1 extends JFrame{
- private static final long serialVersionUID = -1295261024563143679L;
- private Ellipse2D ball = new Ellipse2D.Double(0, 0, 25, 25);
- private Timer moveBallTimer;
- int _ballXpos, _ballYpos;
- JButton button1, button2;
- JButton movingButton;
- JTextArea textArea1;
- int buttonAClicked, buttonDClicked;
- private long _openTime = 0;
- private long _closeTime = 0;
- JPanel thePanel = new JPanel();
- JPanel thePlacebo = new TestPanel();
- final JFrame frame = new JFrame("Reflexology");
- final JFrame frame2 = new JFrame("The Test");
- JLabel label1 = new JLabel("Press X and then click the moving dot as fast as you can.");
- public static void main(String[] args){
- new Reflexology1();
- }
- public Reflexology1(){
- frame.setSize(600, 475);
- frame.setLocationRelativeTo(null);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.setTitle("Reflexology 1.0");
- frame.setResizable(false);
- frame2.setSize(600, 475);
- frame2.setLocationRelativeTo(null);
- frame2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame2.setTitle("Reflexology 1.0");
- frame2.setResizable(false);
- button1 = new JButton("Accept");
- button2 = new JButton("Decline");
- //movingButton = new JButton("Click Me");
- ListenForAcceptButton lForAButton = new ListenForAcceptButton();
- ListenForDeclineButton lForDButton = new ListenForDeclineButton();
- button1.addActionListener(lForAButton);
- button2.addActionListener(lForDButton);
- //movingButton.addActionListener(lForMButton);
- JTextArea textArea1 = new JTextArea(24, 50);
- textArea1.setText("Tracking Events\n");
- textArea1.setLineWrap(true);
- textArea1.setWrapStyleWord(true);
- textArea1.setSize(15, 50);
- textArea1.setEditable(false);
- FileReader reader = null;
- try {
- reader = new FileReader("EULA.txt");
- textArea1.read(reader, "EULA.txt");
- } catch (IOException exception) {
- System.err.println("Problem loading file");
- exception.printStackTrace();
- } finally {
- if (reader != null) {
- try {
- reader.close();
- } catch (IOException exception) {
- System.err.println("Error closing reader");
- exception.printStackTrace();
- }
- }
- }
- JScrollPane scrollBar1 = new JScrollPane(textArea1, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
- AdjustmentListener listener = new MyAdjustmentListener();
- thePanel.add(scrollBar1);
- thePanel.add(button1);
- thePanel.add(button2);
- frame.add(thePanel);
- ListenForMouse lForMouse = new ListenForMouse();
- thePlacebo.addMouseListener(lForMouse);
- thePlacebo.add(label1);
- frame2.add(thePlacebo);
- ListenForWindow lForWindow = new ListenForWindow();
- frame.addWindowListener(lForWindow);
- frame2.addKeyListener(new KeyAdapter() {
- public void keyPressed(KeyEvent e){
- if(e.getKeyChar() == 'X' || e.getKeyChar() == 'x') {moveBallTimer.start();}
- }
- });
- frame.setVisible(true);
- moveBallTimer = new Timer(1000, new ActionListener() {
- public void actionPerformed(ActionEvent e) {
- moveBall();
- System.out.println("Timer started!");
- repaint();
- }
- });
- addKeyListener(new KeyAdapter() {
- public void keyPressed(KeyEvent e) {
- if(frame2.isVisible()){ moveBallTimer.start(); }
- }
- });
- }
- private class ListenForAcceptButton implements ActionListener{
- public void actionPerformed(ActionEvent e){
- if (e.getSource() == button1){
- Calendar ClCDateTime = Calendar.getInstance();
- System.out.println(ClCDateTime.getTimeInMillis() - _openTime);
- _closeTime = ClCDateTime.getTimeInMillis() - _openTime;
- //frame.getContentPane().remove(thePanel);
- //thePlacebo.addKeyListener(lForKeys);
- //frame.getContentPane().add(thePlacebo);
- //frame.repaint();
- moveBallTimer.start();
- frame.setVisible(false);
- frame2.setVisible(true);
- frame2.invalidate();
- frame2.repaint();
- thePlacebo.repaint();
- }
- }
- }
- private class ListenForDeclineButton implements ActionListener{
- public void actionPerformed(ActionEvent e){
- if (e.getSource() == button2){
- JOptionPane.showMessageDialog(Reflexology1.this, "You've declined the license agreement. DO NOT RESTART the program. Please go inform a researcher that you have declined the agreement.", "WARNING", JOptionPane.INFORMATION_MESSAGE);
- System.exit(0);
- }
- }
- }
- private class ListenForWindow implements WindowListener{
- public void windowActivated(WindowEvent e) {
- //textArea1.append("Window is active");
- }
- // if this.dispose() is called, this is called:
- public void windowClosed(WindowEvent arg0) {
- }
- // When a window is closed from a menu, this is called:
- public void windowClosing(WindowEvent arg0) {
- }
- // Called when the window is no longer the active window:
- public void windowDeactivated(WindowEvent arg0) {
- //textArea1.append("Window is NOT active");
- }
- // Window gone from minimized to normal state
- public void windowDeiconified(WindowEvent arg0) {
- //textArea1.append("Window is in normal state");
- }
- // Window has been minimized
- public void windowIconified(WindowEvent arg0) {
- //textArea1.append("Window is minimized");
- }
- // Called when the Window is originally created
- public void windowOpened(WindowEvent arg0) {
- //textArea1.append("Let there be Window!");
- Calendar OlCDateTime = Calendar.getInstance();
- _openTime = OlCDateTime.getTimeInMillis();
- //System.out.println(_openTime);
- }
- }
- private class MyAdjustmentListener implements AdjustmentListener {
- public void adjustmentValueChanged(AdjustmentEvent arg0) {
- AdjustmentEvent scrollBar1;
- //System.out.println(scrollBar1.getValue()));
- }
- }
- class TestPanel extends JPanel {
- @Override
- public void paintComponent(Graphics g) {
- super.paintComponent(g);
- Graphics2D g2d = (Graphics2D) g;
- g2d.setColor(Color.RED);
- g2d.fill(ball);
- System.out.println("Calling fill()");
- }
- }
- Random rand = new Random();
- protected void moveBall() {
- //System.out.println("I'm in the moveBall() function!");
- int width = getWidth();
- int height = getHeight();
- int min, max, randomX, randomY;
- min = 0;
- max = 200;
- randomX = min + (int)(Math.random() * ((max - min)+1));
- randomY = min + (int)(Math.random() * ((max - min)+1));
- //System.out.println(randomX + ", " + randomY);
- Rectangle ballBounds = ball.getBounds();
- // //System.out.println(ballBounds.x + ", " + ballBounds.y);
- // if (ballBounds.x + randomX < 0) {
- // randomX = 200;
- // } else if (ballBounds.x + ballBounds.width + randomX > width) {
- // randomX = -200;
- // }
- // if (ballBounds.y + randomY < 0) {
- // randomY = 200;
- // } else if (ballBounds.y + ballBounds.height + randomY > height) {
- // randomY = -200;
- // }
- ballBounds.x = randomX;
- ballBounds.y = randomY;
- _ballXpos = ballBounds.x;
- _ballYpos = ballBounds.y;
- ball.setFrame(ballBounds);
- thePlacebo.repaint();
- }
- public void start() {
- moveBallTimer.start();
- }
- public void stop() {
- moveBallTimer.stop();
- }
- private class ListenForMouse implements MouseListener{
- // Called when the mouse is clicked
- public void mouseClicked(MouseEvent e) {
- //System.out.println("Mouse Panel pos: " + e.getX() + " " + e.getY() + "\n");
- if (e.getX() >=_ballXpos && e.getX() <= _ballXpos + 25 && e.getY() <=_ballYpos && e.getY() >= _ballYpos - 25 ) {
- System.out.println("TRUE");
- }
- System.out.println("{e.getX(): " + e.getX() + " / " + "_ballXpos: " + _ballXpos + " | " + "{e.getY(): " + e.getY() + " / " + "_ballYpos: " + _ballYpos);
- }
- public void mouseEntered(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- public void mouseExited(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- public void mousePressed(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- public void mouseReleased(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- }
- // System.out.println("e.getX(): " + e.getX() + " / " + "_ballXpos: " + _ballXpos);
- // Mouse over
- public void mouseEntered(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- // Mouse left the mouseover area:
- public void mouseExited(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- public void mousePressed(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- public void mouseReleased(MouseEvent arg0) {
- // TODO Auto-generated method stub
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement