1
データソースと同じ辞書を使用する2つのコンボボックスがあります。最初のコンボボックスにキーが表示され、2番目のコンボボックスに値が表示されます。複数のコンボボックスのデータソースを同じビューコントローラで実装する方法
まず、データソースデリゲートメソッドの実装には少し助けが必要です。下記のコードをご覧ください。関連するボックスはfloorsBoxとroomsBoxです。他の2つは、ローカル変数またはインターフェースから取り込まれるため、無視してください。 また、1階の[key = 0]には3つの部屋[value = 3]があり、3の値を取り、roomsBox内の3つの項目にするにはどうすればいいですか?そのため、フロアが変わるたびに部屋のボックスに対応する項目数が表示されます(それが意味をなさない場合)。私は本当にあなたの助けに感謝し、私はあなたに感謝します。
class RoomAndAlarmTypesVC: NSViewController, NSComboBoxDelegate, NSComboBoxDataSource {
//MARK: - Properties
private var floorsAndRooms = [String: String]()
@IBOutlet private weak var floorsBox: NSComboBox!
@IBOutlet private weak var roomsBox: NSComboBox!
@IBOutlet private weak var roomType: NSComboBox!
@IBOutlet private weak var alarmType: NSComboBox!
//MARK: - Actions
override func viewDidLoad() {
super.viewDidLoad()
floorsAndRooms = representedObject as! [String : String]
floorsBox.usesDataSource = true
roomsBox.usesDataSource = true
roomType.usesDataSource = true
alarmType.usesDataSource = true
floorsBox.delegate = self
roomsBox.delegate = self
roomType.delegate = self
alarmType.delegate = self
floorsBox.dataSource = self
roomsBox.dataSource = self
roomType.dataSource = self
alarmType.dataSource = self
}
@IBAction private func setTheSystem(_ sender: NSButton) {
}
func numberOfItems(in comboBox: NSComboBox) -> Int {
what do i do here?
}
func comboBox(_ comboBox: NSComboBox, objectValueForItemAt index: Int) -> Any? {
same here?
}
}
はお時間をいただき、ありがとうございます。あなたの答えは完璧です。 switchステートメントからエラーが発生しています。タイプNSComboBoxの値にはメンバー数がありません。これは私が行ったアイテムの数を返そうとしているときに発生します。 –
ありがとうございました。あなたのソリューションの仕事。今私は部屋のボックス内の項目を変更する方法を把握する必要がありますそのボックスで床が変更されたとき –