Я пытался использовать QCalendarWidget, чтобы выбрать даты, которые я буду использовать позже.
Итак, я создал виджет, он показывает, и все выглядит хорошо.
Затем я печатаю выбранную дату в текстовом браузере для тестирования и вижу, что формат даты плохой.
Это код, соответствующий данной проблеме:
from PyQt5 import QtGui, QtCore, QtWidgets, uic
class Window(QtWidgets.QMainWindow):
def __init__(self):
super(Window, self).__init__()
self.ui = uic.loadUi('rent_creation.ui', self)
#the widgets are called calendarWidget_start_date_2 and calendarWidget_end_date_2
self.ui.activate_thescript.clicked.connect(self.activate_script)
self.show()
def activate_script(self):
global start_date
global end_date
start_date = self.ui.calendarWidget_start_date_2.selectedDate().toString()
end_date = self.ui.calendarWidget_end_date_2.selectedDate().toString()
#print data in text browser
text = "Start date: %s \n End date: %s \n" %(start_date, end_date)
self.ui.textBrowser.setText(text)
start_date = QtCore.QDate.currentDate()
end_date = QtCore.QDate.currentDate()
def run():
app = QtWidgets.QApplication(sys.argv)
GUI = Window()
sys.exit(app.exec_())
run()
Результат:
Start date: Wed May 9 2018
End date: Tue May 15 2018
Мне нужен формат даты в результате:
Start date: 2018-05-09
End date: 2018-05-15
Спасибо за помощь:)
(я использую глобальные переменные только для примера, очевидно, я выкидываю их из своего реального кода)