Как использовать QCalendarWidget с QDataWidgetMapper?

В настоящее время мой виджет календаря отображается с помощью QDataWidgetMapper следующим образом (с использованием PySide):

self.mapper.addMapping(self.ui.calendar, 2, "selectedDate")

И он отображает правильную дату, когда я это делаю:

self.mapper.toFirst()

Но моя проблема в том, что когда я изменяю выбранную дату, щелкая другую дату, сопоставление не фиксирует изменение и не сохраняет его в базе данных. Другими словами, сопоставитель не выдает setData для модели или setModelData, если я решу использовать делегата.

Что мне не хватает?

Изменить: я нашел решение. То, что я сделал выше, было правильным, но картограф не отправлял данные автоматически. Я сделал следующее:

self.ui.calendar.selectionChanged.connect(self.ui.mapper.submit())

person Leandro M Barbosa    schedule 27.02.2013    source источник
comment
Если вам удалось решить свою проблему, сделайте ее ответом. И вы даже можете это принять. Это и принято, и рекомендовано. Так что не стесняйтесь делать это.   -  person Bart    schedule 03.03.2013


Ответы (1)


Я нашел решение. То, что я сделал выше, было правильно, но картограф не отправлял данные автоматически. Я сделал следующее:

self.ui.calendar.selectionChanged.connect(self.ui.mapper.submit())

person Leandro M Barbosa    schedule 16.07.2015