刷新锚窗格 javafx

refreshing anchorpane javafx

我有一个 Anchorpane 包含一些标签、文本字段和 buttons.A 单击 button.After 选择名称和 ID 会打开新的 window从新 window 开始,在键盘 window 上按下 Enter 按钮时关闭,名称和 ID 传递给已打开的 Anchorpane。我必须在 Anchorpane 的标签上设置名称和 ID。我得到了这些值,但它没有在不刷新锚窗格的情况下在标签中设置。

如何在不按任何按钮加载锚窗格的情况下再次刷新锚窗格。我看到了类似的问题,但对我没有任何帮助。

我传递的数据如下;

FXMLLoader load = new FXMLLoader();
                    try {
                        Pane root = load.load(getClass().getResource(FXML_CTRL_BILL).openStream());
                        Item_bill bill = load.getController();
                        bill.setDataCustomer(name, id);

                    } catch (IOException e) {
                        e.printStackTrace();
                    }

我在我的 Item_bill 控制器中得到了传递值,如下所示

public void setDataCustomer(String name, String cutmrId) {

    Item_bill.customerName = name;
    Item_bill.customerId = cutmrId;

}

只有在再次调用 initialize() 方法后才会设置值。 如何在不再次调用 initialize() 方法的情况下解决这个问题?

谁能帮帮我。谢谢。

最后我解决了这个问题, 我引用了名为 custmrNameDummy 和 idLabelDummy 的标签,

@FXML
private Label custmrName;
public static Label custmrNameDummy;
@FXML
private Label idLabel;
public static Label idLabelDummy;
static String customerName = null;
static String customerId = null;


public void initialize(URL location, ResourceBundle resources) {

    custmrNameDummy=custmrName;
    idLabelDummy=idLabel;


}


public static void setDataCustomer(String name, String cutmrId) {

    Item_bill.customerName = name;
    Item_bill.customerId = cutmrId;

    custmrNameDummy.setText(customerName);
    idLabelDummy.setText(String.valueOf(customerId));

}

它对我有用。

不幸的是来不及帮助您解决上述问题,但我遇到了相同/类似的问题,但我解决了它:-)

首先对我的问题做一个简短的解释:

我有三个 TableView:

("tblPreviousResults", "tblTotalStatistics", "tblAvailableCategories")

所有 table 都位于一个 AnchorPane 上,我想根据 CheckBoxTableCell(位于 TableView "tblAvailableCategories" 中)是否触发 TableView "tblPreviousResults" 上的更新是否被选中。

我的第一次尝试(一如既往):

tblPreviousResults.setItems(FXCollections.observableArrayList(newPreviousResults)); tblPreviousResults.refresh();

但是直到我直接选择/聚焦 table,newPreviousResults 才出现。

现在我有了解决问题的方法:

tblPreviousResults.getParent().requestFocus();

也许我可以帮助别人 :-)