在JavaFX中单击RadioButton时显示列表

时间:2018-04-28 16:51:10

标签: java user-interface javafx tableview


我正在寻找一种方法来显示“公司”列表,只有在我的GUI中点击两个RadioButtons之一时。

以下是代码:

import pandas as pd 

df['join_id'] = range(len(df)) 
starts = df[['start_date', 'join_id']].rename(columns={'start_date': 'date'})
ends = df[['end_date', 'join_id']].rename(columns={'end_date': 'date'})
start_end = pd.concat([starts, ends]).set_index('date')

fact_table = start_end.groupby("task_id").apply(lambda x: x.resample('D').fillna(method='pad'))
del fact_table["join_id"]
fact_table = fact_table.reset_index()
final = fact_table.merge(df, right_on='join', left_on='join', how='left')

好吧,我的想法是创建这样的东西: Image link

到现在为止,忘记“名称”和“价值”对象。 我需要知道只有当我点击“个性化”RadioButton时才能显示TableView。

谢谢

1 个答案:

答案 0 :(得分:0)

ToggleGroup.selectedToggle.selected属性添加一个侦听器,该属性可以从父级添加或删除列表。在这种情况下,由于您正在使用BorderPane,因此您还可以根据所选切换来绑定中心属性:

Node nodeToDisplay = ...; // in this case use the ListView/TableView
borderOnce.centerProperty().bind(Bindings.when(btnPersonalized.selectedProperty())
                                         .<Node>then(nodeToDisplay)
                                         .otherwise((Node) null));

替代听众

btnPersonalized.selectedProperty().addListener((o, oldValue, newValue) -> {
    if (newValue) {
        borderOnce.setCenter(nodeToDisplay);
    } else {
        borderOnce.setCenter(null);
    }
});

在这种情况下,您需要确保GUI的初始状态为&#34;有效&#34;。