Вверх ↑
Этот топик читают: Гость
Ответов: 16884
Рейтинг: 1239
#16: 2017-03-05 12:19:17 ЛС | профиль | цитата
nesco писал(а):
почему у тебя текущая дата не засвечена
А кто его знает.
nesco писал(а):
наверное не обновил компонент MonthCalendar
Только что проверил. У меня обновленный.
И не дай бог кликнуть на "Сегодня:05.03.2017".

И, кстати, о птичках.
Бесплатные шрифты.
Arial
Arial Black
Comic Sans MS
Courier New
Georgia
Impact
Times New Roman
Trebuchet MS
Verdana
Для использования остальных - необходимо приобрести лицензию, т.к. владелец шрифта может засудить.

Редактировалось 1 раз(а), последний 2017-03-05 12:32:17
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#17: 2017-03-05 12:42:13 ЛС | профиль | цитата
Tad писал(а):
Только что проверил. У меня обновленный.

Посыпаю свою лысую голову пеплом, я забыл новый выложить на SVN. Выложил с добавлением в хвост вывода DataInt для создания матрицы
Tad писал(а):
И, кстати, о птичках.

Я вроде Arial применял.

Выложил вторую версию с матрицей дат, больше такого безобразия не наблюдается. По-хорошему, эту матрицу надо бы добавить в компонент MonthCalendar

Редактировалось 3 раз(а), последний 2017-03-05 12:46:15
карма: 22

0
файлы: 1PrintCalendar_002.rar [5.8KB] [482]
Ответов: 16884
Рейтинг: 1239
#18: 2017-03-05 12:47:04 ЛС | профиль | цитата
Обновил. Пока не помогло - текущая дата не засвечена
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#19: 2017-03-05 12:49:29 ЛС | профиль | цитата
Tad писал(а):
Обновил. Пока не помогло - текущая дата не засвечена

А у тебя появилось свойство CurrentDay, это свойство должно стоять true?

--- Добавлено в 2017-03-05 12:52:15

Вот так должно засвечивать

PrintCalendar_001.png

Редактировалось 1 раз(а), последний 2017-03-05 12:52:15
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#20: 2017-03-05 13:08:03 ЛС | профиль | цитата
Поставил true. Всё OK
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#21: 2017-03-05 13:15:46 ЛС | профиль | цитата
Tad писал(а):
Поставил true. Всё OK

Отлично. Посмотри вторую версию с матрицей, там я убрал обнаруженный баг с месяцем.
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#22: 2017-03-05 13:29:54 ЛС | профиль | цитата
Смотрю.

Красный - лишний.
nesco писал(а):
там я убрал обнаруженный баг с месяцем.

Вроде в Delphi просто переходит в следующий месяц.

--- Добавлено в 2017-03-05 14:08:53

НОРМАЛЬНО

Редактировалось 2 раз(а), последний 2017-03-05 14:08:53
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Разработчик
Ответов: 26061
Рейтинг: 2120
#23: 2017-03-05 14:27:46 ЛС | профиль | цитата
Tad писал(а):
Вроде в Delphi просто переходит в следующий месяц

Ну это же не стандартный контрол, а так, эмуляция из того, что есть с минимальными правками. Хорошо, что сделал, параллельно нашел небольшой баг в новых элементах DocumentTemplate. Так что, их тоже надо было все обновить, если у кого они новые.

Редактировалось 1 раз(а), последний 2017-03-05 14:29:05
карма: 22

1
Голосовали:Tad
Ответов: 1376
Рейтинг: 197
#24: 2017-03-05 17:51:58 ЛС | профиль | цитата
Tad писал(а):
И не дай бог кликнуть на "Сегодня:05.03.2017".

Попытка управления несуществующей ячейкой таблицы (вывод в строку с индексом 6). У меня такая же ошибка и закрытие программы.
карма: 1

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#25: 2017-03-05 19:22:10 ЛС | профиль | цитата
foksov писал(а):
Попытка управления несуществующей ячейкой таблицы (вывод в строку с индексом 6). У меня такая же ошибка и закрытие программы.

А как ты умудрился получить несуществующий индекс? Я прекрасно кликал на текущую дату, и она у меня выбиралась нормально. Или ты че-то пытаешься под себя подстроить?

--- Добавлено в 2017-03-05 19:26:19

А, да, есть такое, если попытаться кликнуть на границе.

--- Добавлено в 2017-03-05 19:35:04

Замени пока вот эти компоненты

Схема


Add(MathParse,7787987,483,245)
{
MathStr="(%1 div (%2 div 7) <= 5) * (%1 div (%2 div 7)) +\r\n(%1 div (%2 div 7) > 5) * 5"
ResultType=0
link(onResult,60996:doCalc,[])
}
Add(MathParse,60996,539,245)
{
MathStr="(%1 div (%2 div 7) <= 6) * (%1 div (%2 div 7)) +\r\n(%1 div (%2 div 7) > 6) * 6"
ResultType=0
}


Редактировалось 3 раз(а), последний 2017-03-05 19:35:04
карма: 22

0
Ответов: 817
Рейтинг: 52
#26: 2017-03-05 19:38:24 ЛС | профиль | цитата
nesco писал(а):
А, да, есть такое, если попытаться кликнуть на границе.

О какой границе идет речь ?
Я тыкаю в слово "Сегодня" или в оранжевый квадратик и появляется вот такое
errcalendar.png

--- Добавлено в 2017-03-05 19:40:49

nesco писал(а):
Замени пока вот эти компоненты

Заменил, теперь выбирается все что угодно, но только не текущая дата

Редактировалось 1 раз(а), последний 2017-03-05 19:40:49
карма: 1

0
Ответов: 8886
Рейтинг: 823
#27: 2017-03-05 19:56:04 ЛС | профиль | цитата
Tiger76, вот так подойдёт? :
Календарь

Add(MainForm,2953706,112,56)
{
link(onCreate,617763:doWork1,[])
}
Add(ChildPanel,617763,168,70)
{
}
BEGIN_SDK
Add(EditMulti,9475523,21,21)
{
EventCount=1
WorkCount=1
VarCount=1
Width=244
Height=151
link(doWork1,15649453:doStart,[(88,27)(88,111)])
link(Var1,1028996:Text,[(27,152)(216,152)])
}
Add(Panel,9149765,35,105)
{
Left=75
Top=25
Width=150
Height=187
Color=0
}
Add(ChildPanel,5128579,105,35)
{
link(onEvent1,15649453:doMonth,[(144,41)(144,97)(95,97)(95,118)])
}
BEGIN_SDK
Add(EditMulti,14884892,21,21)
{
EventCount=1
VarCount=3
Width=559
Height=249
link(Var1,3143550:Array,[(27,254)(377,254)])
link(Var2,9387643:Var1,[(34,131)(160,131)(160,103)])
link(Var3,11967394:Var1,[(41,215)(202,215)(202,180)])
}
Add(Panel,10182956,35,77)
{
Left=2
Top=2
Width=146
Height=17
Align=2
BorderWidth=0
BevelInner=0
}
Add(Button,5945931,154,140)
{
Left=1
Top=1
Width=15
Height=15
Caption="<"
link(onClick,16033683:doWork2,[])
}
Add(Button,15063446,161,63)
{
Left=17
Top=1
Width=15
Height=15
Caption="<"
link(onClick,6809694:doPrev,[])
}
Add(Button,16570111,196,133)
{
Left=131
Top=1
Width=15
Height=15
Caption=">"
link(onClick,10464653:doWork2,[])
}
Add(Button,15367888,203,56)
{
Left=115
Top=1
Width=15
Height=15
Caption=">"
link(onClick,6809694:doNext,[])
}
Add(Label,11665268,525,140)
{
Left=33
Top=1
Width=82
Color=-16777196
Font=[MS Sans Serif,8,1,0,1]
AutoSize=1
Alignment=2
}
Add(MonthCalendar,16738569,252,203)
{
Holidays=[]
EmptyDays=0
link(onDay,12124374:doStr,[])
link(Year,11967394:Var2,[])
link(Month,9387643:Var2,[])
}
Add(Time,9992144,98,35)
{
Time_Date=1
Point(DateTime)
Point(Hours)
Point(Minute)
Point(Second)
}
Add(Counter,1905094,252,133)
{
Min=700
Max=9999
Point(doValue)
link(onNext,6900766:doWork2,[])
}
Add(Counter,6809694,259,56)
{
Min=1
Max=12
Default=3
Point(doValue)
link(onNext,7128393:doValue,[])
}
Add(Timer,2908106,28,175)
{
Interval=10
AutoStop=1
link(onTimer,15983869:doEvent1,[])
}
Add(DoData,8421725,112,154)
{
link(onEventData,1905094:doValue,[])
link(Data,9992144:Hours,[])
}
Add(Hub,15983869,70,175)
{
OutCount=4
link(onEvent1,71765:doData,[(95,181)(95,83)])
link(onEvent2,8421725:doData,[(102,188)(102,160)])
link(onEvent3,6900766:doWork3,[(424,195)])
link(onEvent4,4534948:doWork2,[])
}
Add(DoData,71765,119,77)
{
link(onEventData,6809694:doValue,[])
link(Data,9992144:Minute,[])
}
Add(StrList,12398465,469,42)
{
Strings=#0:|4:Янв.|4:Фев.|4:Март|4:Апр.|4:Май.|4:Июнь|4:Июль|4:Авг.|4:Сен.|4:Окт.|4:Нояб|4:Дек.|
Point(doGetString)
Point(onGetString)
Point(IdxToSelect)
Point(String)
link(IdxToSelect,9387643:Var3,[(489,33)(300,33)(300,103)])
}
Add(FormatStr,16254931,483,140)
{
Mask="%2 %1 г."
link(onFString,11665268:doText,[])
link(Str1,11967394:Var3,[(489,131)(473,131)(473,180)])
link(Str2,12398465:String,[])
}
Add(GetDataEx,9387643,259,98)
{
link(Data,6809694:Count,[])
}
Add(Hub,4512094,434,133)
{
OutCount=3
link(onEvent1,12398465:doGetString,[(459,139)(459,90)])
link(onEvent2,16254931:doString,[])
link(onEvent3,4534948:doWork1,[(459,153)(459,174)(193,174)])
}
Add(HubEx,6900766,420,133)
{
link(onEvent,4512094:doEvent1,[])
}
Add(GetDataEx,11967394,252,175)
{
link(Data,1905094:Count,[])
}
Add(MemFifo,7128393,308,56)
{
link(onData,10986482:doCalc,[])
}
Add(MathParse,10986482,357,56)
{
MathStr="(%1=1)*(%2=12)*2 + (%1=12)*(%2=1)"
link(onResult,871379:doEvent,[])
link(X1,7128393:Value1,[(363,47)(352,47)(352,101)(314,101)])
link(X2,7128393:Value2,[(370,40)(345,40)(345,94)(321,94)])
}
Add(IndexToChanel,871379,399,56)
{
Count=3
link(onEvent1,6900766:doWork1,[(454,62)(454,126)(424,126)])
link(onEvent2,16033683:doWork1,[(447,69)(447,120)(235,120)])
link(onEvent3,10464653:doWork1,[(438,76)(438,111)(242,111)])
}
Add(HubEx,16033683,231,140)
{
link(onEvent,1905094:doPrev,[])
}
Add(HubEx,10464653,238,133)
{
link(onEvent,1905094:doNext,[])
}
Add(HubEx,4534948,189,196)
{
link(onEvent,14655514:doEvent1,[])
}
Add(Hub,14655514,210,196)
{
OutCount=3
link(onEvent1,3143550:doClear,[(340,202)(340,216)])
link(onEvent2,16738569:doEnumDays,[])
link(onEvent3,14884892:onEvent1,[(235,216)(235,262)(568,262)(568,27)])
}
Add(StrList,3143550,357,203)
{
}
Add(MT_String,12124374,301,203)
{
link(onResult,3143550:doAdd,[])
}
END_SDK
Add(ChildPanelEx,15649453,105,105)
{
link(onChange,4054845:doString,[])
link(String,5128579:Var1,[])
}
BEGIN_SDK
Add(EditMultiEx,1350310,21,21)
{
WorkCount=#7:doStart|7:doMonth|
EventCount=#8:onChange|
VarCount=#6:Number|
DataCount=#6:String|
Width=405
Height=144
link(doStart,12763946:doFor,[(88,27)(88,34)])
link(doMonth,1422213:doWork2,[(32,34)(32,104)])
link(Number,13067512:Value,[(27,145)(328,145)])
}
Add(Panel,10264484,35,105)
{
Left=1
Top=38
Width=149
Height=127
Color=0
BevelInner=0
}
Add(ChildPanelEx,13519937,280,91)
{
Mode=1
link(onClick,13067512:doValue,[])
}
BEGIN_SDK
Add(EditMultiEx,14111858,35,42)
{
WorkCount=#5:##add|8:##select|5:doStr|
EventCount=#7:onClick|
VarCount=#12:##eventIndex|0:|
Width=461
Point(##add)
Point(##select)
Point(##eventIndex)
link(doStr,15540772:doSplit,[])
}
Add(Panel,15189448,420,56)
{
Left=35
Top=105
Width=20
Height=20
Font=[MS Sans Serif,10,1,0,1]
Layout="parent.MyCalend"
Point(doColor)
Point(doFont)
link(onClick,8960527:doCompare,[(459,62)(459,153)(270,153)(270,174)])
}
Add(MultiStrData,15540772,49,56)
{
Count=3
link(onPart1,1932189:doValue,[])
link(onPart3,6830844:doEvent,[(88,76)(88,104)])
}
Add(IndexToChanel,6830844,147,98)
{
Count=3
link(onEvent1,15948364:doClear,[])
link(onEvent2,8213796:doClear,[])
link(onEvent3,9714308:doClear,[])
}
Add(Font,12199140,371,105)
{
Font=[MS Sans Serif,10,1,0,1]
link(onFont,9424055:doWork2,[])
link(Color,6673563:Var3,[(384,96)(324,96)(324,147)])
}
Add(Memory,15948364,189,91)
{
Default=Integer(13158600)
link(onData,8213796:doValue,[(228,97)(228,104)])
}
Add(Memory,8213796,238,98)
{
Default=Integer(0)
link(onData,9714308:doValue,[(277,104)(277,111)])
}
Add(Memory,9714308,287,105)
{
Default=Integer(255)
link(onData,11419924:doData,[])
}
Add(DoData,11419924,329,105)
{
link(onEventData,12199140:doFont,[])
}
Add(Font,15269699,371,168)
{
Font=[MS Sans Serif,10,1,65280,1]
link(onFont,9424055:doWork3,[(410,174)])
}
Add(HubEx,9424055,406,105)
{
Angle=3
link(onEvent,15189448:doFont,[(410,76)])
}
Add(If_else,8960527,280,168)
{
Type=5
link(onTrue,5278455:doEvent1,[])
link(Op1,15948364:Value,[(286,146)(195,146)])
link(Op2,6673563:Var2,[])
}
Add(GetDataEx,6673563,287,142)
{
link(Data,9714308:Value,[])
}
Add(Memory,1932189,98,56)
{
link(onData,15189448:doCaption,[])
}
Add(DoData,9009532,413,196)
{
link(onEventData,14111858:onClick,[(466,202)(466,48)])
link(Data,1932189:Value,[(419,47)(139,47)(139,96)(104,96)])
}
Add(Hub,5278455,329,168)
{
link(onEvent1,15269699:doFont,[])
link(onEvent2,9009532:doData,[(361,181)(361,202)])
}
END_SDK
Add(For,12763946,98,28)
{
End=41
link(onEvent,13519937:##add,[(268,34)(268,97)])
link(onStop,13264794:doResize,[])
}
Add(GridLayout,13264794,217,35)
{
Name="MyCalend"
Space=1
Padding=1
Rows=6
Cols=7
}
Add(ArrayEnum,14574978,98,98)
{
link(onItem,6568606:doEvent1,[])
link(Array,1350310:String,[(104,82)(27,82)])
}
Add(Hub,6568606,147,98)
{
link(onEvent1,7391489:doData,[])
link(onEvent2,971472:doCompare,[])
}
Add(DoData,7391489,168,98)
{
link(onEventData,13519937:##select,[])
link(Data,826521:Var2,[])
}
Add(HubEx,1422213,77,98)
{
link(onEvent,14574978:doEnum,[])
}
Add(If_else,971472,217,105)
{
Type=5
link(onTrue,13519937:doStr,[])
link(Op1,826521:Var3,[(223,89)])
link(Op2,13519937:##eventIndex,[(230,89)(258,89)(258,131)(286,131)])
}
Add(GetDataEx,826521,168,84)
{
Angle=3
link(Data,14574978:Index,[(139,89)(139,137)(111,137)])
}
Add(Memory,13067512,322,91)
{
link(onData,11623704:doEvent1,[])
}
Add(Hub,11623704,364,91)
{
link(onEvent1,1350310:onChange,[(396,97)(396,27)])
link(onEvent2,1422213:doWork1,[(389,104)(389,76)(81,76)])
}
END_SDK
Add(Edit,1028996,210,105)
{
Left=2
Top=165
Width=146
Align=4
Font=[MS Sans Serif,8,1,0,1]
Text=""
Alignment=2
link(onChange,9475523:onEvent1,[(253,111)(253,27)])
}
Add(ChildPanel,4590242,35,49)
{
}
BEGIN_SDK
Add(EditMulti,9698909,21,21)
{
}
Add(Panel,908320,112,49)
{
Left=2
Top=20
Width=146
Height=17
BorderWidth=0
BevelInner=0
BevelWidth=0
Point(Handle)
}
Add(Img_Text,7472048,98,126)
{
Y=2
DrawSource=1
Font=[MS Sans Serif,8,1,0,1]
Text="Пн Вт Ср Чт Пт"
link(onDraw,5325706:doDraw,[])
link(Bitmap,12184805:Var1,[(104,89)])
}
Add(Img_Text,5325706,147,126)
{
X=107
Y=2
DrawSource=1
Font=[MS Sans Serif,8,1,255,1]
Text="Сб Вс"
link(Bitmap,12184805:Var3,[(153,89)])
}
Add(Timer,3325873,49,126)
{
Interval=10
AutoStop=1
link(onTimer,7472048:doDraw,[])
}
Add(GetDataEx,12184805,112,84)
{
link(Data,908320:Handle,[])
}
END_SDK
Add(FormatStr,4054845,161,105)
{
DataCount=3
Mask="%1-%2-%3"
link(onFString,1028996:doText,[])
link(Str1,15649453:Number,[(167,96)(153,96)(153,145)(111,145)])
link(Str2,5128579:Var2,[(174,89)(118,89)])
link(Str3,5128579:Var3,[(181,82)(125,82)])
}
END_SDK


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

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#28: 2017-03-05 20:13:38 ЛС | профиль | цитата
-= DriveR =- писал(а):
Я тыкаю в слово "Сегодня" или в оранжевый квадратик и появляется вот такое

Тыкание в "Сегодня" ни к чему не должно приводить, тут у меня с диапазоном надо поиграться, чтобы запретить выбор слова "Сегодня". Я вообще-то не предусматривал его выбор, а что, надо?

--- Добавлено в 2017-03-05 20:16:34

Леонид, а че у тебя на длинных месяцах год пропадает?

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

0
Ответов: 817
Рейтинг: 52
#29: 2017-03-05 21:13:04 ЛС | профиль | цитата
nesco писал(а):
Тыкание в "Сегодня" ни к чему не должно приводить

Возможно и не должно, но факт остается фактом, у меня Win 8.1 x64
nesco писал(а):
а что, надо?

Обычно, в подобных календарях, когда тыкаешь на "Сегодня", перескакивает на текущую дату.
Например, я гуляю по календарю куда угодно и на данный момент у меня отображается 22 июня 1941г
Нажимая на "Сегодня" или оранжевый квадратик, календарь должен перескочить на текущую дату.

Редактировалось 1 раз(а), последний 2017-03-05 21:14:41
карма: 1

0
Ответов: 8886
Рейтинг: 823
#30: 2017-03-05 21:46:48 ЛС | профиль | цитата
nesco писал(а):
год пропадает
Да шрифт перед выкладыванием изменил с обычного на жирный, а не проверил ИСПРАВИЛ

Редактировалось 1 раз(а), последний 2017-03-06 12:43:06
карма: 19

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