МихаилллAug. 11, 2019, 9:15 a.m.
Как в QML сделать календарь?
Добрый день.
Как в QML сделать календарь?
Это
не подходит, т.к. использую QtQuick.Controls 2.12
We recommend hosting TIMEWEB
Stable hosting, on which the social network EVILEG is located. For projects on Django we recommend VDS hosting.Do you like it? Share on social networks!
B
- Bogdannn
- March 27, 2024, 4:15 p.m.
C++ - Test 001. The first program and data types
- Result:46points,
- Rating points-6
Last comments
Qt Linux - Lesson 001. Autorun Qt application under Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
АК
Qt WinAPI - Lesson 007. Working with ICMP Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
Анатолий КононенкоFeb. 4, 2024, 10:50 p.m.
EVADec. 25, 2023, 7:30 a.m.
Boost - static linking in CMake project under Windows Сделал всё по-как у вас, но выдаёт ошибку [build] LINK : fatal error LNK1104: не удается открыть файл "libboost_locale-vc142-mt-gd-x64-1_74.lib" Хоть убей, не могу понять в чём дел…
Qt/C++ - Lesson 056. Connecting the Boost library in Qt for MinGW and MSVC compilers Для решения твой проблемы добавь в файл .pro строчку "LIBS += -lws2_32" она решит проблему , лично мне помогло.
Now discuss on the forum
Как получить в массив значения из связанной модели? Спасибо, разобрался:))
AC
QML Обнулить значения SpinBox Доброго времени суток, не могу разобраться с обнулением значение SpinBox находящего в делегате. import QtQuickimport QtQuick.ControlsWindow { width: 640 height: 480 visible: tr…
Alexandru CodreanuJan. 19, 2024, 8:57 a.m.
BlinCTDec. 27, 2023, 5:57 a.m.
ДмитрийJan. 10, 2024, 1:18 a.m.
Evgenii LegotckoiDec. 12, 2023, 3:48 a.m.
Так ви можите використовувати і 1.4 одночасно
Не могу, qt так не работает.
Если делаю так, то страничка не работает:
Тому що для календаря потрібний
import QtQuick.Controls 1.4
Якщо в файлі нічого специфічного не використовується то можна просто замінити версію, а якщо ніяк то або винести календар в окремий файл а потім підключити його, або... Вроді так теж має працювати
import QtQuick.Controls 1.4 as Controlold
Controlold.Calendar {
minimumDate: new Date(2017, 0, 1)
maximumDate: new Date(2018, 0, 1)
}
Краще ще почитати
https://doc.qt.io/qt-5/qtqml-syntax-imports.html
к слову говоря есть и для вторых контролов какие-то наработки по календарю.
https://doc.qt.io/archives/qt-5.7/qt-labs-calendar2-qmlmodule.html
С помощью этого получилось вставить календарь. Но как прикрутить подсветку и маусареи к нужным дням?
Можете сделать это с помощью делегата. Предполагаю, что это можно сделать примерно так
Но мне нужно привязать к дням месяца, а не ко всему месяцу.
делегат отвечает за представление одного дня в месяце в данном случае. Да, вы добавляете MouseArea к делегату, а уже в обработчиках MouseArea можете проверить, какой именно день кликнули.
Если так добавляю делегата, то календарь перестает отображаться. Скажите пожалуйста, почему так и как исправить?
Ну потому, что делегат отвечает за представление одного элемента модели, когда вы его переопределяете, то вам нужно полностью написать его вёрстку. Естественно, что у вас ничего не отображается в этом случае, поскольку вы не написали, что отображать в делегате. Делегат - это внешний вид одной ячейки даты календаря, если вы не указываете нигде текст ячейки, то и не увидите его.
Вот рабочий код
Вообще, вы можете использовать такое обращение к данным модели
в самом Qt есть пример календаря (welcome->examples->Calendar Widget Example)
есть и тут пример