第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

仍然無法理解為什么我的 TableView 更改偵聽器不起作用

仍然無法理解為什么我的 TableView 更改偵聽器不起作用

躍然一笑 2021-09-15 10:43:27
我知道我的問題是微不足道的,解決方案是表面上的,但我仍然無法處理它,所以需要幫助。問題是我的代碼中的 TableView ListChangeListener 沒有顯示更新的更改。在問一個問題之前,我已經閱讀了很多主題、手冊和示例但仍然無法理解為什么我的代碼不起作用。我已經添加,extractor但它沒有幫助我。
查看完整描述

1 回答

?
紅顏莎娜

TA貢獻1842條經驗 獲得超13個贊

在尋找對我的問題的評論和缺點后,我發(fā)現我需要自己在代碼中搜索問題。希望有人會發(fā)現這個問題并回答有用。問題出在我的閱讀方法中readDataFromStream()。在閱讀上述主題之前,我使用了這種方式聲明ObservableList


public static ObservableList<EmailData> emailData = FXCollections.observableArrayList(); 

我的readDataFromStream樣子:


public static ObservableList<EmailData> readDataFromStream(byte[] bytes) {

    ObservableList<EmailData> emailData = FXCollections.observableArrayList();

    try {

        ByteArrayInputStream bis = new ByteArrayInputStream(bytes);

        ObjectInputStream ois = new ObjectInputStream(bis);

        List<EmailData> list = (List<EmailData>) ois.readObject();

        emailData = FXCollections.observableList(list);

        bis.close();

        ois.close();

    } catch (ClassNotFoundException | IOException e) {

        e.printStackTrace();

    }

    return emailData;

}

然后我讀到我需要使用提取器創(chuàng)建列表。我將ObservableList聲明更改為:


ObservableList<EmailData> emailData = FXCollections.observableArrayList(ed ->

        new Observable[]{

                ed.nameProperty(),

                ed.loginProperty(),

                ed.passwordProperty(),

                ed.commentsProperty()

        });

但我的readDataFromStream()方法保持不變?,F在我把它改成:


public static ObservableList<EmailData> readDataFromStream(byte[] bytes) {

ObservableList<EmailData> emailData = FXCollections.observableArrayList(ed ->

        new Observable[]{

                ed.nameProperty(),

                ed.loginProperty(),

                ed.passwordProperty(),

                ed.commentsProperty()

        });

    try {

        ByteArrayInputStream bis = new ByteArrayInputStream(bytes);

        ObjectInputStream ois = new ObjectInputStream(bis);

        List<EmailData> list = (List<EmailData>) ois.readObject();

            emailData = FXCollections.observableList(

        list,

        (EmailData tp) -> new Observable[]{tp.nameProperty(), tp.passwordProperty(),

                tp.loginProperty(), tp.commentsProperty()});

        bis.close();

        ois.close();

    } catch (ClassNotFoundException | IOException e) {

        e.printStackTrace();

    }

    return emailData;

}

和wasUpdated()方法ListChangeListener.Change 現在就像一個魅力。


希望對我這樣的新手有所幫助。


查看完整回答
反對 回復 2021-09-15
  • 1 回答
  • 0 關注
  • 166 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號