Текстовый NSDatePicker в представлении NSMenuItem - PullRequest
1 голос
/ 26 сентября 2019

Итак, у меня есть элемент строки состояния, в котором есть меню с элементом меню, представлением которого является текстовый NSDatePicker.Когда вы щелкаете по полю в окне выбора даты, оно обычно выделяется и выделяется.По-видимому, помещая средство выбора даты в представление пункта меню, я отвечаю за кучу поведения.Во-первых, щелчок поля, чтобы я мог изменить его с помощью степпера, не выбирается, поэтому я подклассифицировал NSDatePicker и:

override func acceptsFirstMouse(for event: NSEvent?) -> Bool {

    return true
}

Теперь поля можно выбирать и изменять с помощью степпера, но они не выделяются,поэтому я переопределил:

override func mouseDown(with : NSEvent) {


    super.mouseDown(with: with)

    let cell : NSCell = (self.selectedCell())!
    cell.isSelectable = true

        cell.highlight(true, withFrame: self.frame, in: self)

}

Я не могу выделить выделенное поле.Я не могу понять, как получить кадр клетки.self - это подкласс NSDatePicker, так что это NSView.

Это все очень странно для меня, поскольку поля выделяются при запуске из XCode, но при непосредственном запуске приложения - нет.

Кто-нибудь знает, каквыделить выделенное поле в текстовом NSDatePicker, встроенном в представление NSMenuItem?

- Отметить

...