Вверх ↑
Этот топик читают: Гость
Ответов: 2193
Рейтинг: 673
#1: 2017-04-05 11:02:35 ЛС | профиль | цитата
Календарь визуальный компонент.

Вид календаря

Возможности:
1. Отображает от 1 до 12 месяцев.
2. Множественный выбор (подряд) дат. Количество настраивается.
3. Ограничение на минимальную и максимальную дату при выборе.
4. Начало недели как понедельник или воскресенье.
5. Отображение номеров недели.
6. Количество сдвигов месяцев при нажатии кнопок следующий/предыдущий месяц.
7. Список выделенных(праздничных) дней.
8. Настройка цветов окраски календаря.
9. Блокировка выпадающих меню (месяц, год, сегодняшняя дата) и кнопок следующий/предыдущий месяц.
10. Показ/скрытие ссылки на сегодняшнюю дату.
11. Показ/скрытие кружка над сегодняшней датой.

Возможности интерфейса:
1. Нажатие на кнопки следующий/предыдущий сдвигает месяцы в календаре на заданное количество (свойство MonthDelta)
2. Нажатие на название месяца вызывает выпадающее меню с двенадцатью месяцами.
3. Нажатие на год открывает счетчик сдвига годов.
4. Правая кнопка мыши открывает меню для перехода на сегодняшнюю дату.
5. Нажатие на ссылку сегодняшней даты (если отображается свойство ToDay=True) выделяет в календаре сегодняшнюю дату.

Так как у меня ХР SP3, то не все получилось реализовать. Некоторые возможности календаря доступны в системах от Vista и выше. Если у кого появится желание можете доработать. Если кто из новичков желает попробывать, пишите в личку, подскажу что и как. Или как обновлю компьютер, доработаю.

Найдите что тут не так? ,)

Компонент доступен по ссылке: Скачать (05-04-2017)

Компонент в стадии тестирования.

Редактировалось 2 раз(а), последний 2017-04-05 13:36:22
карма: 10

5
Голосовали:miver, Tad, Nickname, Konst, flash1103
vip
#1.1контекстная реклама от партнеров
Ответов: 16884
Рейтинг: 1239
#2: 2017-04-05 12:57:04 ЛС | профиль | цитата
Напиши "К текущей дате"
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#3: 2017-04-05 13:07:36 ЛС | профиль | цитата
sla8a писал(а):
Найдите что тут не так? ,)

Вообще-то календарь на аглицком через "C" пишется -- Calendar. А еще во фразе "К сегодняшней" буква "о" пропущена. А так симпатично получился. Вот только монотонный он какой-то, но это недостаток системного календаря.

--- Добавлено в 2017-04-05 13:19:10

Tad писал(а):
Напиши "К текущей дате"

Он не сможет, это системное сообщение, на DatePicker-e также выдает "К сегодняшней дате"

--- Добавлено в 2017-04-05 13:26:17

sla8a писал(а):
Компонент в стадии тестирования.

Подождем окончания тестирования. Компонент интересный.

Редактировалось 7 раз(а), последний 2017-04-05 13:26:39
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#4: 2017-04-05 13:29:18 ЛС | профиль | цитата
nesco писал(а):
на DatePicker-e также выдает
Не также.
Внимательней посмотри на картинку от sla8a .
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#5: 2017-04-05 13:40:17 ЛС | профиль | цитата
Tad писал(а):
Внимательней посмотри на картинку от sla8a .

Ну ошибка у него в слове, а больше непонятно что, у него же XP непонятно какой локализации. У меня DatePicker тоже выдает "К сегодняшней дате"

DatePicker_010.png
карма: 22

0
Ответов: 2193
Рейтинг: 673
#6: 2017-04-05 13:46:20 ЛС | профиль | цитата
Tad, nesco, в системе опечатка, пропущена "о" в выпадающем меню "К сегдняшней дате".
nesco писал(а):
Вообще-то календарь на аглицком через "C" пишется -- Calendar.
Это у меня только в двух скриншотах, исправил.
Tad писал(а):
Напиши "К текущей дате"
Есть такая возможность, вставлять свое меню (Свойство Block\ToDayLink=True и onToDayLink).
Пример замены системного меню на свое

Add(MainForm,2953706,378,294)
{
Width=817
Height=587
Caption="Calendar"
}
Add(Calendar,12016330,448,294)
{
Left=155
Top=105
ToDayLink=0
Point(onToDayLink)
link(onToDayLink,6643468:doDeferredEvent,[])
}
Add(DeferredEvent,6643468,490,308)
{
link(onDeferredEvent,4648087:doPopupHere,[])
}
Add(PopupMenu,4648087,532,308)
{
Menu=#14:К текущей дате|
}
Таким же способом можно заменить все системные меню компонента.
nesco писал(а):
Вот только монотонный он какой-то, но это недостаток системного календаря.
Было желание приделать свою отрисовку, но начинаю сомневаться что это возможно.

Редактировалось 2 раз(а), последний 2017-04-05 13:48:03
карма: 10

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#7: 2017-04-05 13:54:01 ЛС | профиль | цитата
Короче, ждем окончания тестирования и решение Автора о добавлении по завершению.
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#8: 2017-04-06 18:44:55 ЛС | профиль | цитата
Компонент интересный.
А где он может понадобиться?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#9: 2017-04-06 21:52:34 ЛС | профиль | цитата
Tad писал(а):
А где он может понадобиться?

Да тут же кто-то недавно просил такой календарь.
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#10: 2017-04-06 22:38:06 ЛС | профиль | цитата
nesco писал(а):
Да тут же кто-то недавно просил такой календарь.
Этот календарь ему не подойдёт.
То, что он хочет сделать, делается совершенно по другому и без никаких календарей. ИМХО.

Редактировалось 1 раз(а), последний 2017-04-06 22:45:39
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 490
Рейтинг: 162
#11: 2018-05-24 06:24:01 ЛС | профиль | цитата
sla8a,посмотри скриншот , даты выделенные жирным шрифтом
Календарь.png
как исправить? появляются всегда, если перемещать месяцы ,выделения переходит на другие месяцы (цифры теже).
WIN 7 64b
карма: 4

0
Ответов: 2193
Рейтинг: 673
#12: 2018-05-24 15:31:19 ЛС | профиль | цитата
tig-rrr, а что в свойстве ListDayState выставлено? Это свойство отвечает за выделения жирным шрифтом дат.
карма: 10

0
Ответов: 490
Рейтинг: 162
#13: 2018-05-25 09:28:19 ЛС | профиль | цитата
sla8a писал(а):
а что в свойстве ListDayState выставлено?

Список пуст.
скриншот_календарь.png

Редактировалось 1 раз(а), последний 2018-05-25 09:30:51
карма: 4

0
Ответов: 2193
Рейтинг: 673
#14: 2018-05-25 13:08:57 ЛС | профиль | цитата
tig-rrr, а заполните список датами, к примеру этими:
1-1
7-1
23-2
8-3
31-12

Будет ли правильно выделяться даты?

Редактировалось 1 раз(а), последний 2018-05-25 13:30:21
карма: 10

0
Ответов: 490
Рейтинг: 162
#15: 2018-05-25 13:49:02 ЛС | профиль | цитата
sla8a писал(а):
а заполните список датами, к примеру этими:

к имеющимся ранее добавились ещё...
календарь_001.png
причём 1-1 не добавилось.

Редактировалось 1 раз(а), последний 2018-05-25 13:50:31
карма: 4

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)