powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 7 годовой календарь
25 сообщений из 81, страница 1 из 4
Delphi 7 годовой календарь
    #39766655
Валерий666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, что можно поискать.
Суть задачи вывести годовой календарь, все 12 месяцев сразу. С возможностью выделения и раскрашивания различных дат(бэкграунда цветом по условию из БД или списка).

Стандартные компоненты не подходят.
Реализовать получилось на AlphaSkins TsMonthCalendar, но есть пару НО:

1. Нельзя растянуть на 12 месяце как со стандартной компонентой.

А даже если рисовать 12 компонент с фиксированными месяцами и колхозить переходы между годами, то:
2. Нельзя убрать дни не относящиеся к текущему месяцу (рисуется и заполняется вся сетка 6х7).

Что посоветуете?
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766657
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валерий6662. Нельзя убрать дни не относящиеся к текущему месяцу (рисуется и заполняется вся сетка 6х7).
Смотрел в MinDate, MaxDate?
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766688
Фотография JayDi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Обычный грид. Одна ячейка -- один день; записи -- месяцы; колонки -- дни. Очень наглядно и возможностей куча по работе с данными.
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766810
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766832
Валерий666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanВалерий6662. Нельзя убрать дни не относящиеся к текущему месяцу (рисуется и заполняется вся сетка 6х7).
Смотрел в MinDate, MaxDate?
Смотрел, нет такого.

JaDi, за почти 25 лет никто не нарисовал полноценную компоненту?)

DimaBr, видел, как события обрабатывать? анализировать и распознавать канву?
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766833
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валерий666Смотрел, нет такого.
Допилить не сложно:
Код: pascal
1.
2.
3.
4.
function Monthcal_SetRange(hmc: HWND; gdtr: DWORD; rgst: PSystemTime): BOOL;
begin
  Result := BOOL(SendMessage(hmc, MCM_SETRANGE, gdtr, Longint(rgst)));
end;
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766835
xMailer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dbgrideh
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766836
zinpub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Валерий666,

DevExpress'ы так умеют
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766840
Валерий666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
xMailerdbgridehНе поделитесь исходником?)
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766854
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А у меня вот такой самодельный календарь на год.
Крутилки годОв-месяцОв - всё есть
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766874
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorА у меня вот такой самодельный календарь на год.
Крутилки годОв-месяцОв - всё есть

жесть
зачем рвать месяцы на части??
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766876
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Tactical Nuclear PenguindefecatorА у меня вот такой самодельный календарь на год.
Крутилки годОв-месяцОв - всё есть

жесть
зачем рвать месяцы на части??

потому что дни привязаны к дням недели
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766879
Tactical Nuclear Penguin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorTactical Nuclear Penguinпропущено...


жесть
зачем рвать месяцы на части??

потому что дни привязаны к дням недели

я имею в виду что например 1 февраля должно занимать клеточку ниже и правее 31 января а не скакать непонятно куда
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766889
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Tactical Nuclear Penguindefecatorпропущено...


потому что дни привязаны к дням недели

я имею в виду что например 1 февраля должно занимать клеточку ниже и правее 31 января а не скакать непонятно куда

и тогда придётся глазами двигать влево-вправо, чтобы эту ленту читать.
А так перед глазами у тебя сразу один месяц в одну строку - сразу видно, где начинается и каким днём,
и как заканчивается, и каим днём
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766902
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Валерий666 DimaBr, видел, как события обрабатывать? анализировать и распознавать канву?
Какие события ?
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766915
DimaBr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39766917
xMailer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пожалуйста, в uses дергаются мои модули, либо уберите unknow функции, либо замените на свои.
там все просто
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767018
L_argo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecatorА у меня вот такой самодельный календарь на год.
Крутилки годОв-месяцОв - всё естьВполне годно. без излишеств и компактно.
Можно даже на ДБГрид + SQL запилить.
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767038
asviridenkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Правильный ответ




Код: html
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
<script type="passcript">
  procedure setselected();
  begin
    $('.day').removeClass('selected');
    this.addClass('selected');
  end; 
  $('.day').on('click', 'setselected()');
</script>

{{#months}}
 <div class="month">
   <div class="monthname">{{monthname}}</div>
   <table>
   {{#dow}}
   <tr>
     <td class="downame">{{downame}}</td>
     <td class="day">{{#dayname}} {{..monthindex}}|{{dowindex}}|1{{/dayname}}</td>
     <td class="day">{{#dayname}} {{..monthindex}}|{{dowindex}}|2{{/dayname}}</td>
     <td class="day">{{#dayname}} {{..monthindex}}|{{dowindex}}|3{{/dayname}}</td>
     <td class="day">{{#dayname}} {{..monthindex}}|{{dowindex}}|4{{/dayname}}</td>
     <td class="day">{{#dayname}} {{..monthindex}}|{{dowindex}}|5{{/dayname}}</td>
     <td class="day">{{#dayname}} {{..monthindex}}|{{dowindex}}|6{{/dayname}}</td>
   </tr>
  {{/dow}} 
 </table>
</div>
{{/months}}


...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767042
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
asviridenkovПравильный ответ
абсолютно убогий
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767066
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
defecator,

Убогий - это ты загнул. Скорей аскетичный.
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767067
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну и выбор цветов выделения даты весьма спорен.
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767075
Фотография defecator
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
rgreatdefecator,

Убогий - это ты загнул. Скорей аскетичный.
это просто календарь, практически стандартный
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767079
asviridenkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Чето ржу" (с)

Набор цветов, как впрочем шрифтов, расположения, выделения и всего прочего определяется вот этим

Код: css
1.
2.
3.
4.
5.
6.
7.
body {font-size: 9pt; font-family: 'Segoe UI'; background: white}
td {text-align: center; padding: 2px}
td.day:hover {color: blue; background: yellow; }
.month {display: inline-block; margin: 5px 5px}
.monthname {font-weight: bold; font-size: 10pt; color: navy; text-align: center}
.downame {font-weight: bold}
.selected {background: green !important; color: white !important}



И меняется как угодно за пару минут.
...
Рейтинг: 0 / 0
Delphi 7 годовой календарь
    #39767098
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
asviridenkovменяется как угодно за пару минут.Ну и что мешает сразу сделать хорошо?
...
Рейтинг: 0 / 0
25 сообщений из 81, страница 1 из 4
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Delphi 7 годовой календарь
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]