簡體   English   中英

選擇ComboBox中的項目時調用功能TornadoFX

[英]Invoke Function When Item in ComboBox is Selected TornadoFX

我如何在tornadofx中設置一個組合框,以便在從下拉菜單中選擇一個項目時調用該函數,並將所選項目的文本作為參數傳遞給該函數。

例如,如果我有一個包含城市名稱的數組,並且這些名稱被設置為組合框中的項目:

val cities = FXCollections.observableArrayList("Dallas", "New York", "Sacramento")

combobox<String>
{
    items = cities
    //when item is selected from list perform some function on the name of the city selected
}

例如,當單擊其中一項將城市名稱打印到控制台時,如何調用一個函數?

您可以將onChange偵聽器添加到ComboBoxitemProperty ,也可以將ComboBox綁定到外部屬性,然后偵聽對該屬性的更改。 這是帶有表單的完整示例視圖:

class MyView : View() {
    val cities = FXCollections.observableArrayList("Dallas", "New York", "Sacramento")
    val selectedCity = SimpleStringProperty()

    override val root = form {
        fieldset {
            field("City") {
                combobox(selectedCity, cities)
            }
        }
    }

    init {
        selectedCity.onChange {
            println("City changed to: $it")
        }
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM