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

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

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

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

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

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

DimaBr, видел, как события обрабатывать? анализировать и распознавать канву?
...
Рейтинг: 0 / 0
30.01.2019, 08:27
    #39766833
wadman
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi 7 годовой календарь
Валерий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
30.01.2019, 08:28
    #39766835
xMailer
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi 7 годовой календарь
dbgrideh
...
Рейтинг: 0 / 0
30.01.2019, 08:30
    #39766836
zinpub
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi 7 годовой календарь
Валерий666,

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

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

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

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


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

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

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


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

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

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




Код: 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
30.01.2019, 14:34
    #39767042
defecator
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi 7 годовой календарь
asviridenkovПравильный ответ
абсолютно убогий
...
Рейтинг: 0 / 0
30.01.2019, 14:58
    #39767066
rgreat
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Delphi 7 годовой календарь
defecator,

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

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

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

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


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