你在原始类或控制器中声明对象值?

问题描述 投票:1回答:1

所以我有两个类叫做Films,一个叫做Filmscontroller。电影课程包含所有的getter和setter以及tostring。控制器是我实现方法的地方。我有一个名为'testbut'的按钮和一个名为'filmtitle'的标签。标签是通用胶片标签的所在。我想要做的是点击按钮,我想能够获得电影的名称,即如下所示在FilmsController类中的Matrix。我可以在“矩阵”的'setText'方法中键入文本,但这不会非常强大。

我的问题是我是否声明了对象(Films matrix = new Films(“Matrix”,5,15,120,“2:30”);在控制器类或原始类中如何让它与按钮一起工作

电影课

package sample;

public class Films {
    private String name;
    private double price;
    private int agelimit;
    private int duration;
    private String bookingtime;

    public Films(String name, double price, int agelimit, int duration, String bookingtime) {
        this.name = name;
        this.price = price;
        this.agelimit = agelimit;
        this.duration = duration;
        this.bookingtime=bookingtime;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public double getPrice() {
        return price;
    }

    public void setPrice(double price) {
        this.price = price;
    }

    public int getAgelimit() {
        return agelimit;
    }

    public void setAgelimit(int agelimit) {
        this.agelimit = agelimit;
    }

    public int getDuration() {
        return duration;
    }

    public void setDuration(int duration) {
        this.duration = duration;
    }

    public String getBookingtime() {
        return bookingtime;
    }

    public void setBookingtime(String bookingtime) {
        this.bookingtime = bookingtime;
    }

    @Override
    public String toString() {
        return "Films{" +
                "name='" + name + '\'' +
                ", price=" + price +
                ", agelimit=" + agelimit +
                ", duration=" + duration +
                ", bookingtime='" + bookingtime + '\'' +
                '}';
    }


}

FilmsController类

import javafx.geometry.Pos;
import javafx.scene.control.Button;

import java.awt.*;

public class FilmsController {
    public Button testbut;
    public Label filmtitle;


    public void changetitle() {
        testbut.setOnAction(event -> {
            filmtitle.setText();
            filmtitle.setAlignment(Pos.CENTER);


        });
    }
    public static void main(String[] args) {
        Films matrix = new Films("Matrix", 5,15,120,"2:30");
    }

}
java javafx java-8
1个回答
0
投票

在我看来,最好的方法(我在我当前的JavaFx项目中使用的),对于这种情况是使用DAO模式。 使用一个(Bean)类来引用您的对象(使用setter和getter方法)。 使用一个(DaoImpl +接口会更好)类来操作该对象(插入,删除,获取,更新对象等)。 仅使用控制器类来更新GUI界面,当您想要从对象获取或更新数据时,您总是使用DAO实现类(我喜欢使它成为Singleton类)。 它就像“大”项目的魅力一样,以后管理和更新项目要容易得多。 希望能帮助到你!

© www.soinside.com 2019 - 2024. All rights reserved.