Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package lab04;
- import javafx.application.Application;
- import javafx.geometry.Pos;
- import javafx.scene.Scene;
- import javafx.scene.control.Button;
- import javafx.scene.control.Label;
- import javafx.scene.control.TextField;
- import javafx.scene.input.MouseEvent;
- import javafx.scene.layout.*;
- import javafx.scene.layout.GridPane;
- import javafx.scene.paint.*;
- import javafx.stage.*;
- import javafx.scene.text.*;
- import javafx.scene.image.*;
- import java.util.Random;
- import javafx.event.ActionEvent;
- import javafx.event.EventHandler;
- public class Lab04 extends Application
- {
- Label lblScore = new Label("Score:");
- Label lblLeft = new Label("Left:");
- Label lblRight = new Label("Right:");
- Label lblLeftCard = new Label();
- Label lblRightCard = new Label();
- Label lblDeck = new Label();
- Font fnt = new Font("Verdana", 30.0);
- Color clr = Color.web("#0076a3");
- TextField tfLeftScore = new TextField("0");
- TextField tfRightScore = new TextField("0");
- Button btnReset = new Button("Reset");
- int rightValue = 0;
- int leftValue = 0;
- int score = 0;
- boolean rightsTurn = true;
- @Override
- public void start(Stage primaryStage) throws Exception
- {
- resetCardImages();
- btnReset.setOnAction(new EventHandler<ActionEvent>()
- {
- @Override
- public void handle(ActionEvent event)
- {
- rightValue = 0;
- leftValue = 0;
- score = 0;
- tfRightScore.setText("0");
- tfLeftScore.setText("0");
- rightsTurn = true;
- resetCardImages();
- }
- }
- );
- lblDeck.setOnMouseClicked(new EventHandler<MouseEvent>()
- {
- @Override
- public void handle(MouseEvent event)
- {
- Random rng = new Random();
- int card = rng.nextInt(52) + 101;
- String carrier = ("file:img" + '\\' + card + ".gif");
- int count = 0;
- if(rightsTurn == true)
- {
- rightValue = card;
- Image imgRightCard = new Image(carrier);
- lblRightCard.setGraphic(new ImageView(imgRightCard));
- rightsTurn = false;
- count++;
- }
- else
- {
- leftValue = card;
- Image imgLeftCard = new Image(carrier);
- lblLeftCard.setGraphic(new ImageView(imgLeftCard));
- rightsTurn = true;
- count++;
- }
- int math = count % 2;
- if(rightValue > leftValue && math == 0)
- {
- score = Integer.parseInt(tfRightScore.getText());
- score++;
- tfRightScore.setText(Integer.toString(score));
- }
- else if(leftValue > rightValue && math == 1)
- {
- score = Integer.parseInt(tfLeftScore.getText());
- score++;
- tfLeftScore.setText(Integer.toString(score));
- }
- }
- });
- tfLeftScore.setPrefWidth(50);
- tfRightScore.setPrefWidth(50);
- tfLeftScore.setDisable(true);
- tfRightScore.setDisable(true);
- BorderPane root = new BorderPane();
- GridPane topPane = new GridPane();
- GridPane cardPane = new GridPane();
- Scene scene = new Scene(root, 300, 300);
- root.setTop(topPane);
- root.setCenter(cardPane);
- root.setBottom(btnReset);
- topPane.add(lblScore, 0, 0);
- topPane.add(lblLeft, 0, 1);
- topPane.add(tfLeftScore, 1, 1);
- topPane.add(lblRight, 2, 1);
- topPane.add(tfRightScore, 3, 1);
- topPane.setHgap(20);
- topPane.setVgap(10);
- lblScore.setFont(fnt);
- lblScore.setTextFill(clr);
- cardPane.setHgap(20.0);
- cardPane.add(lblLeftCard, 0, 0);
- cardPane.add(lblDeck, 1, 0);
- cardPane.add(lblRightCard, 2, 0);
- cardPane.setAlignment(Pos.CENTER);
- primaryStage.setTitle("Lab 4");
- primaryStage.setScene(scene);
- primaryStage.show();
- }
- private void resetCardImages()
- {
- String carrier = ("file:img" + '\\' + "155.gif");
- Image imgLeftCard = new Image(carrier);
- Image imgRightCard = new Image(carrier);
- Image imgDeck = new Image(carrier);
- lblLeftCard.setGraphic(new ImageView(imgLeftCard));
- lblRightCard.setGraphic(new ImageView(imgRightCard));
- lblDeck.setGraphic(new ImageView(imgDeck));
- }
- public static void main(String[] args)
- {
- launch(args);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement