java在按钮中添加方法_在java中添加一个简单的按钮,但java不允许我这样做

好的,从我的观点来看,我的代码相当不错,可以获得及格分数但是我在添加一个简单的刷新/随机播放按钮时遇到了麻烦.不使用JOptionPane的辅助工具.

Eclipse似乎没有意识到我已经创建了一个对我来说根本没有意义的按钮,因为它告诉我一些关于Node实际上是节点并且它被创建的节点.但是当我进入另一个班级并添加另一个带有3行示例的按钮时,它只是起作用.但当我把它移到我的家庭作业程序时,它只是给我一个错误的add方法打破了整个程序!

“类型List中的方法add(Node)不适用于争论(Button)”

任何人都可以在我的代码中找出我可能出错的地方吗?它必须是一个节点到字符串转换的东西,或者我似乎无法弄明白的东西.愿意给我任何提示,但请不要解决我的问题.

这是本书的基本问题.

“编写一个程序,让用户点击刷新按钮,从一副54张牌中显示四张牌.”

我只是需要一些关于按钮的帮助.我确实有其余的.

到目前为止,这是我的代码.

因为太多了,我已经把进口了.

import javafx.application.Application;

import javafx.scene.Scene;

import javafx.scene.layout.BorderPane;

import javafx.scene.layout.HBox;

import javafx.scene.layout.Pane;

import javafx.geometry.Insets;

import javafx.geometry.Pos;

import javafx.stage.Stage;

import javafx.scene.image.Image;

import javafx.scene.image.ImageView;

import java.awt.Button;

import java.io.File;

import java.util.ArrayList;

public class Cards extends Application

{

public void start(Stage primaryStage)

{

ArrayList cards = new ArrayList<>(); //Array list

Shuffle(cards); //Shuffles the Cards

String file1 = new File("cards" + "/" + cards.get(1) + ".png").toURI().toString();

String file2 = new File("cards" + "/" + cards.get(2) + ".png").toURI().toString();

String file3 = new File("cards" + "/" + cards.get(3) + ".png").toURI().toString();

String file4 = new File("cards" + "/" + cards.get(4) + ".png").toURI().toString();

Pane pane = new HBox(20); //Creates the Box for the Images

pane.setPadding(new Insets(5, 5, 5, 5)); //Spreads the Images out

Image image = new Image(file1); //Creates the String Image

Image image2 = new Image(file2);

Image image3 = new Image(file3);

Image image4 = new Image(file4);

pane.getChildren().add(new ImageView(image)); //Adds the First Image

ImageView view1 = new ImageView(image);

view1.setFitHeight(100);

view1.setFitWidth(100);

pane.getChildren().add(new ImageView(image2)); //Adds the Second Image

ImageView view2 = new ImageView(image2);

view2.setFitHeight(100);

view2.setFitWidth(100);

pane.getChildren().add(new ImageView(image3)); //Add the Third Image

ImageView view3 = new ImageView(image3);

view3.setFitHeight(100);

view3.setFitWidth(100);

pane.getChildren().add(new ImageView(image4)); //Add the Fourth Image

ImageView view4 = new ImageView(image4);

view4.setFitHeight(100);

view4.setFitWidth(100);

HBox hbox = new HBox(5); //Creates the Box for the Button

Button shuffle = new Button("Shuffle"); //Creates the Button

hbox.getChildren().add(shuffle); //Should add the button but doesn't

shuffle.addActionListener( e -> //Listener for the button

{

Shuffle(cards);

});

BorderPane pane2 = new BorderPane();/ /Creates the Pane for the Button

pane2.setCenter(pane); //Sets the cards in the Center

pane2.setBottom(hbox); //Sets the Button on the bottom

BorderPane.setAlignment(hbox, Pos.CENTER);

hbox.setAlignment(Pos.BOTTOM_CENTER);//Aligns the Button to BOT_CENTER

Scene scene = new Scene(pane2); //Creates the Scene

primaryStage.setTitle("Cards");

primaryStage.setScene(scene);

primaryStage.show();

}

public void Shuffle(ArrayList cards)

//Allows the cards to Shuffle when called.

{

for (int i = 0; i <= 53; i++) //Sets the Number of Cards in Deck

cards.add(String.valueOf(i+1));

java.util.Collections.shuffle(cards);

}

public static void main(String[] args)

{

launch(args);

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值