Snake
exp: 58 |
Мне нужно сделать календарь на Delphi 7, стандартный компонент MonthCalendar не подходит, потому что хотелось бы отметить выходные красным цветом. И еще к этому календарю, к каждой дате хотелось бы записывать отдельное события (типа ежедневника). Как мне это сделать?
ответить
|
FonBalrog
exp: 293 |
28 марта 2006 14:42 | + 4 часа 35 минут | А что есть большие проблемы с написанием своего компонента? Кроме того поищи в Google - я видел компонент который может тебе подойти.
ответить
|
бизнес-партнёр exp: 285 |
29 марта 2006 15:02 | + 1 день 0 часов | Я кажется знаю, то что тебе нужно! поищи dsCalendar
ответить
|
FonBalrog
exp: 293 |
29 марта 2006 17:47 | + 2 часа 45 минут | Да ну, он недоделанный какой-то.
ответить
|
Snake
exp: 58 |
30 марта 2006 11:30 | + 17 часов 43 минуты | Спасибо... Попробую... Я вообще-то недавно начал программировать и еще не все знаю...
ответить
|
Snake
exp: 58 |
30 марта 2006 11:35 | + 4 минуты | А как установить этот dsCalendar? Я скачал компонент, а он не устанавливается...
ответить
|
бизнес-партнёр exp: 285 |
30 марта 2006 17:26 | + 5 часов 51 минута | 2FonBalrog: Я его сам доделывал! =) 2Snake: Жмешь "Component"->"Install Component"->Выбираешь файл (dsCalendar.pas)->жмешь "Compile", затем "install". Вроде все! :)
ответить
|
Snake
exp: 58 |
31 марта 2006 20:45 | + 1 день 3 часа | Ivnish, спасибо!
ответить
|
Snake
exp: 58 |
1 апреля 2006 19:58 | + 23 часа 12 минут | Не канает :((( Делаю "Component"->"Install Component"->(dsCalendar.pas)->жмешь "Compile"... Дальше выдает ошибку в коде вот здесь (отмечу смайликом):
uses Windows, Forms, Controls, Classes, Graphics, Buttons, ComCtrls, Menus, Messages, SysUtils, DsgnIntf, Extctrls, Stdctrls, Dialogs;
ответить
|
бизнес-партнёр exp: 285 |
5 апреля 2006 15:14 | + 3 дня 19 часов | давай я тебе на мыло скину этот же компонент, только мною доработанный и без глюков! И у тебя какая версия делфи?
ответить
|
Snake
exp: 58 |
5 апреля 2006 21:11 | + 5 часов 56 минут | Ivnish, спасибо тебе большое!!! У меня 7-я версия Delphi, e-mail: snake91@list.ru
ответить
|
Snake
exp: 58 |
7 апреля 2006 6:29 | + 1 день 9 часов | Ivnish, получил, thanks you :)) Ну блин, когда нажимаю "Compile", он не компилирует проект, помечая красным цветом строчки в Unit1.pas (так бывает, когда ошибаешься в коде). Скажи, пожалуйста, в какую папку распаковать архив? Может быть надо внести какой-нибудь модуль в раздел Uses перед компиляцией?
ответить
|
бизнес-партнёр exp: 285 |
7 апреля 2006 17:49 | + 11 часов 19 минут | Самый простой способ (но не самый лучший) - это скопировать все файлы календаря в папку \Borland\Delphi7\Imports
ответить
|
exp: 1 |
22 апреля 2006 19:08 | + 15 дней 1 час | Всем обитателем этого форума здорова! У меня тут возникла проблемка по нахрождению курсовой на эту тему, т.е.календарь на Delphi. не подскажите как сделать или как найти готовую???
ответить
|
бизнес-партнёр exp: 285 |
23 апреля 2006 1:10 | + 6 часов 1 минута | Я думаю начать надо вообще с написания компонент... А проще взять исходник любого календаря, изучить его и написать курсовую!
ответить
|
FonBalrog
exp: 293 |
23 апреля 2006 12:57 | + 11 часов 46 минут | Вот лично я вообще не могу понять что Вы делаете в ВУЗе если у Вас возникают такие проблемы... Только если по клубам тусуете. Мда. ЧТо же будет через 5 лет?
ответить
|
бизнес-партнёр exp: 285 |
24 апреля 2006 8:49 | + 19 часов 52 минуты | А щас идти в программисты модно! Все прут кому не лень... А таких энтузиастов как МЫ, по пальцам пощитать можно!
ответить
|
exp: 19 |
4 ноября 2006 10:02 | + 194 дня 2 часа | Хочу прогу с календарем замутить, но чтоб прога сама на календаре несколько дней отмечала. посоветуйте чего-нибудь
ответить
|
бизнес-партнёр exp: 285 |
7 ноября 2006 21:04 | + 3 дня 11 часов | Сама прога ниче делать не будет, поверь мне
ответить
|
exp: 19 |
11 ноября 2006 12:09 | + 3 дня 15 часов | Я хочу чтоб на календаре несколько дат можно было выделить разными цветами
ответить
|
бизнес-партнёр exp: 285 |
11 ноября 2006 20:08 | + 7 часов 58 минут | Мне как то тоже нужен был календарь, подходящий под мои нужды. Больше всего подходил dsCalendar. Я его немного изменил так, как мне надо было (например, выходные выделил отдельным цветом). Я клоню к тому, что врядли ты найдешь то что тебе нужно. Скорее всего придется писать самому
ответить
|
exp: 19 |
13 ноября 2006 15:10 | + 1 день 19 часов | Я в написании компонентов ни черта не знаю. Расскажите как, или киньте ссылку на какой-нибудь материал
ответить
|
бизнес-партнёр exp: 285 |
14 ноября 2006 20:09 | + 1 день 4 часа |
ответить
|
Alan
exp: 1 |
17 мая 2007 17:52 | + 183 дня 20 часов | Привет всем. Помогите пожалуйста мне надо сделать календарь на делфи 7 по учебнику И.Бабушкина, С.Окулов номер 6.9 может у каго нибудь оно есть или знаете как делать подскажите мне заранее благодарю=)
ответить
|
Don_SiD |
18 мая 2007 17:47 | + 23 часа 54 минуты | нужен календарь надо замутить я хз как!я тут прочитал искал искал не могу найти
ответить
|
Qiska |
5 января 2008 19:44 | + 232 дня 2 часа | А в чтобы календарь в HTML-офрмате печтался как на сайте http://www.pozdravleniya.biz/sms/priznanie/index.html
так можно???
ответить
|
Acr-Soft |
13 января 2008 16:08 | + 7 дней 20 часов | Qiska, Я там календаря не нашел.
ответить
|
Саша |
19 февраля 2008 17:51 | + 37 дней 1 час | To Snake: Ето очень интересно
ответить
|
CHEMCAT |
27 февраля 2008 15:29 | + 7 дней 21 час | а КАК на рабочем столе календарь вывести как в вебшоте
ответить
|
бизнес-партнёр exp: 285 |
28 февраля 2008 11:28 | + 19 часов 58 минут | Попробуй мою программу Ivnish Wallpaper Скачать ее можно с данного сайта например
ответить
|
Настя |
22 апреля 2008 7:35 | + 53 дня 19 часов | Люди, помоги сделать календарь в Delphi!! Надо что бы дни выделялись разными цветами... ПОЖАЛУЙСТА!!!
ответить
|
Настя |
22 апреля 2008 7:40 | + 5 минут | dsCalendar у меня не работает хоть ты тресни... а ещё я нашла WallCalendar, но работать с ним не получается...хоть компонент я и установила без регистрации никак...
ответить
|
бизнес-партнёр exp: 285 |
6 мая 2008 18:25 | + 14 дней 10 часов | To Настя:
dsCalendar у меня не работает? Че грит?
ответить
|
Даша |
14 мая 2008 18:43 | + 8 дней 0 часов | У меня этот dsCalendar не устанавливается. Не находит один из модулей. Может у кого-то есть написанный компонент, который наследует MonthCalendar? Надо курсовую сдавать, а я что-то не могу понять как переопределить свойства, методы...
ответить
|
бизнес-партнёр exp: 285 |
17 мая 2008 9:26 | + 2 дня 14 часов | Интересно) У меня dsCalendar уже несколько лет успешно функционирует в программе Ivnish Wallpaper 2008
ответить
|
бизнес-партнёр exp: 285 |
Хотя планирую заменить его на что-нить другое в ближайшем будущем
ответить
|
Ignis |
29 июня 2008 14:06 | + 43 дня 4 часа | как делать календарь? шабон не подходит надо вручную,да и выделять надо сб и вс красным,а все остальное синим цветами,и к тому же надо чтоб покзыались числа предыдущего и последующего месяцев =( кто знает?
ответить
|
VIL |
25 июля 2008 14:34 | + 26 дней 0 часов | а где этот компонент после инстала найти??? и как его на форму натащить?
ответить
|
бизнес-партнёр exp: 285 |
26 июля 2008 13:47 | + 23 часа 13 минут | To VIL:
Учите мат часть для начала
ответить
|
Pahan |
27 июля 2008 15:03 | + 1 день 1 час | Вот мой календарь покапайся unit main;
interface
uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, Grids, StdCtrls;
type TForm1 = class(TForm) sg: TStringGrid; DT: TMonthCalendar; l1: TStaticText; l2: TLabel; CB: TComboBox; Label1: TLabel; function findday(d:integer):string; procedure addmonth; procedure vis; procedure FormShow(Sender: TObject); procedure DTClick(Sender: TObject); procedure sgDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); procedure DTGetMonthInfo(Sender: TObject; Month: Cardinal; var MonthBoldInfo: Cardinal); procedure CBChange(Sender: TObject); private { Private declarations } public { Public declarations } end;
var Form1: TForm1; dk,dn:tdatetime; rez,r:integer; c_row,c_col:integer; m:array [1..12] of string; ssg:array [0..6,1..6] of string;
implementation
{$R *.DFM}
function TForm1.findday(d:integer):string; var j,k:integer; begin for j:=1 to sg.RowCount-1 do for k:=0 to sg.ColCount-1 do begin if pos(inttostr(d),ssg[k,j])<>0 then begin c_col:=k; c_row:=j; result:=sg.Cells[k,j]; exit; end; end; end;
procedure TForm1.addmonth; begin m[1]:='Январь'; m[2]:='Февраль'; m[3]:='Март'; m[4]:='Апрель'; m[5]:='Май'; m[6]:='Июнь'; m[7]:='Июль'; m[8]:='Август'; m[9]:='Сентябрь'; m[10]:='Октябрь'; m[11]:='Ноябрь'; m[12]:='Декабрь'; end;
procedure TForm1.vis; var yy,mm,dd:word; dweek:integer; month,stroka:integer; j,k:integer; begin for j:=1 to sg.RowCount-1 do begin sg.Rows[j].Clear; for k:=0 to sg.ColCount-1 do ssg[k,j]:=''; end;
dn:=strtodate('05.01.08')+cb.ItemIndex; dk:=dt.Date; DecodeDate(dk,yy,mm,dd); dk:= EncodeDate(yy, mm, 1); month:=mm; l1.caption:=m[mm]; dd:=1; stroka:=1; while month = mm do begin dweek:= (DayOfWeek(dk)+6) mod 7; if dweek = 0 then dweek:=7;
r:=round(dk-dn); rez:= r mod 4; case rez of 0: begin sg.Cells[dweek-1,stroka]:=inttostr(dd)+' день'; ssg[dweek-1,stroka]:=inttostr(dd)+' день'; end; 1: begin sg.Cells[dweek-1,stroka]:=inttostr(dd)+' в ночь'; ssg[dweek-1,stroka]:=inttostr(dd)+' в ночь'; end; 2: begin sg.Cells[dweek-1,stroka]:=inttostr(dd)+' с ночи'; ssg[dweek-1,stroka]:=inttostr(dd)+' с ночи'; end; 3: begin sg.Cells[dweek-1,stroka]:=inttostr(dd)+' выходной'; ssg[dweek-1,stroka]:=inttostr(dd)+' выходной'; end; end; dk:= dk+1; DecodeDate(dk,yy,mm,dd); dweek:= (DayOfWeek(dk)+6) mod 7; if dweek = 1 then inc(stroka); end;
dk:=dt.Date; DecodeDate(dk,yy,mm,dd); l2.Caption:=findday(dd); end;
procedure TForm1.FormShow(Sender: TObject); begin sg.Cells[0,0]:='Пон'; sg.Cells[1,0]:='Вт'; sg.Cells[2,0]:='Ср'; sg.Cells[3,0]:='Чет'; sg.Cells[4,0]:='Пят'; sg.Cells[5,0]:='Суб'; sg.Cells[6,0]:='Вос'; cb.ItemIndex:=0; dt.Date := Now; addmonth; vis; end;
procedure TForm1.DTClick(Sender: TObject); begin vis; end;
procedure TForm1.sgDrawCell(Sender: TObject; ACol, ARow: Integer; Rect: TRect; State: TGridDrawState); begin if pos('день',sg.Cells[acol,arow])>0 then sg.Canvas.Brush.Color:=$0080FFFF; if pos('в ночь',sg.Cells[acol,arow])>0 then sg.Canvas.Brush.Color:=$00F0C8BF; if pos('с ночи',sg.Cells[acol,arow])>0 then sg.Canvas.Brush.Color:=$00FCF1A3; if pos('выходной',sg.Cells[acol,arow])>0 then sg.Canvas.Brush.Color:=$00A6F9A6; if (acol=c_col)and(arow=c_row) then sg.Canvas.Font.Style:=[fsbold]; sg.Canvas.FillRect( sg.CellRect(acol,arow)); sg.Canvas.Font.Color := clblack; sg.Canvas.TextOut(Rect.Left + 2, Rect.Top+2, sg.Cells[acol,arow]); end;
procedure TForm1.DTGetMonthInfo(Sender: TObject; Month: Cardinal; var MonthBoldInfo: Cardinal); begin dt.BoldDays([16,28], MonthBoldInfo); end;
procedure TForm1.CBChange(Sender: TObject); begin vis; end;
end.
ответить
|
ColdZer0 |
14 ноября 2008 21:41 | + 110 дней 7 часов | для dsCalendar модуль, который он не находит в новых версиях delphi называется DSIntf.dcu
ответить
|
Acr-Soft |
28 января 2009 0:24 | + 74 дня 2 часа | ну вы даете.. Календарь делаеться просто, немного знаний, больше фантазий и готово!
ответить
|
Оксана |
2 сентября 2010 10:18 | + 582 дня 8 часов | Как в календаре сделать, чтобы при нажатии,например,1 апреля выводило день смеха?????розкажите пожалуста.
ответить
|
maks787 |
1 декабря 2010 17:32 | + 90 дней 8 часов | Форумчане!!!
ВСЕ кто хочет аху...но программировать в delphi
вот самая лучшая книга по делфи, 30 примеров программ на самый разный вкус от отправки e-mail и СМС до до самых различных игр и настройки Windows. В общем ВОТ ССЫЛКА
http://depositfiles.com/files/c0uk9ky91
ответить
|
ANNA |
9 апреля 2011 17:58 | + 128 дней 23 часа | добрый вечер!!мне нужно сделать производственный календарь,я незнаю как сделать чтобы в компоненте Calendar выходные и праздники были другим цветом!!подскажите!!пожалуйста!!
ответить
|
exp: 1 |
11 апреля 2011 17:40 | + 1 день 23 часа | Всем привет! Ребят подскажите пожалуйста, можно ли на компоненте MonthCalendar усиановить картинку? Что бы получился вид картинки а на ней распологался сам календарь. Очень надо!!!
ответить
|
Delia |
10 июля 2011 0:23 | + 89 дней 6 часов | These pieces really set a stadnard in the industry.
ответить
|