powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Класс куда-то спрятался.
16 сообщений из 16, страница 1 из 1
Класс куда-то спрятался.
    #33231272
Всем доброго времени суток!

Я тут включил в свой проект "чужой" класс - календарь.

Если запускать этот класс из формы(Desktop=.F.) - календарик появляется, если же форме дать Desktop=.T. - класса не видно.


п.с. до аффтара дастучишся...
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33231302
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я тут написал программу, а она не работает. В чем дело?
Ты думаешь, кто-то может дать вразумительный ответ на такой вопрос?

Откуда взял класс? Есть ли исходники? Предназначен ли данный класс для работы в As Top-Level формах? Использовался ли ActiveX-компонент?
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33231391
ВладимирМ

Да думал, моя проблема типична...

Исходников нет.

Взял отсюда:
http://www.foxclub.ru/sol/index.php?act=view&id=225
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33232474
Фотография ВладимирМ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тебе надо связаться с автором класса либо по указанному в прилагаемом текстовом файле e-mail, либо напрямую в конференции

http://forum.foxclub.ru/list.php?f=29

Кроме того, поскольку автор пишет, что взял готовый класс из библиотеки Дмитрия Боянова (DBRAD), то возможно, имеет смысл связяться с ним

http://www.dbrad32.narod.ru/

Код класса открытый. Какие проблемы самому в нем покопаться...

Для классов на базе контейнера типичным является глюк, когда содержимое контейнера не отображается при открытии формы. Лечиться принудительным отображением ПОСЛЕ отображения формы (т.е. не ранее события Activate формы) примерно таким способом:

ThisForm.Calendar.DateBox.Visible = .F.
ThisForm.Calendar.DateBox.Visible = .T.

Правда, это характерно для ActiveX компонет. С родными объектами FoxPro такого вроде бы не случается...

Кстати, что именно не отображается? Сам контейнер, или вызываемая форма cDate описанная в процедуре?
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33232657
ВладимирМ

Нашел файлик "ридми". Там и мэйл - буду жаловаться... )


Не видна форма, то бишь сам объект.
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33232920
Фотография Анатолий Широков
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если календарь наследуется от Form, то попробуй установить свойство ShowWindow в значение 1 (In Top Level).
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33238272
Анатолий Широков :

Это в форме прописать или в самом классе?
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33238568
Проходящий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShowWindow - это свойство формы.
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33241756
Не знаю к чему это свойство...
Ну прописал showwindow = 2, так форма ваще стала странно себя вести, при вызове класса.

Порядок вызова:

Главное окно - моя форма - немой класс(календарь). Так вот, при вызове календаря
форма прячеться за головное окно, а календарь прет поверх окна и формы...



пы. сы.
Люди, мне надо, что б свойство Десктоп= .Тру. было
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33278824
В общем, тема остается открытой.

Ещё раз опишу свою проблему.

Есть класс-контейнер-не мое.
Есть класс-календарь-не мое.
И есть моя форма-моё.

Контейнер лежит на моей форме. Из него я вызываю календарь.
Когда мояформа.Desktop = .F. - календарь не прячется, иначе - исчезает.

Вот код-свойство моей формы, ничё особенного тут нет:
Desktop = .T.
ShowWindow = 0
ShowTips = .T.

AutoCenter = .T.
BorderStyle = 0
MaxButton = .F.
WindowState = 0
AlwaysOnTop = .F.
SizeBox = .F.


Вот код календаря:

*-- ParentClass: form
*-- BaseClass: form
*-- Time Stamp: 09/01/05 10:36:02 AM
*-- Календарь - заготовка без 37 кнопок и лэйблов, которые создаются динамичеcки в .Init
*
DEFINE CLASS calendar AS form


Height = 130
Width = 177
Desktop = .T.
ShowWindow = 1
DoCreate = .T.
ShowTips = .T.
AutoCenter = .T.
BorderStyle = 0
Caption = "Календарь"
ControlBox = .F.
Closable = .F.
MaxButton = .F.
MinButton = .F.
Movable = .T.
Visible = .T.
Enabled = .T.
Icon = ""
KeyPreview = .T.
WindowType = 1
WindowState = 0
AlwaysOnTop = .F.
BackColor = RGB(210,208,200)
*-- Выбранная дата
seldate = ""
*-- Выбранный месяц
selmonth = ""
*-- Выбранный год
selyear = ""
*-- Подсвеченный сейчас день
currentday = ""
*-- Первый день месяца
firstday = ""
*-- Последний день месяца
lastday = ""
PROTECTED initialdate
initialdate = ""
Name = "calendar"

*-- After form initializing it becomes .T.
initialized = .F.


ADD OBJECT blackheader AS label WITH ;
FontBold = .F., ;
FontName = "MS Sans Serif", ;
FontSize = 8, ;
BackStyle = 0, ;
Caption = "Пн Вт Ср Чт Пт", ;
Height = 17, ;
Left = 8, ;
Top = 18, ;
Width = 114, ;
TabIndex = 0, ;
Name = "BlackHeader"


ADD OBJECT redheader AS label WITH ;
FontBold = .F., ;
FontName = "MS Sans Serif", ;
FontSize = 8, ;
BackStyle = 0, ;
Caption = "Сб Вс", ;
Height = 17, ;
Left = 130, ;
Top = 18, ;
Width = 45, ;
TabIndex = 0, ;
ForeColor = RGB(128,64,64), ;
Name = "RedHeader"


ADD OBJECT line1 AS line WITH ;
Height = 0, ;
Left = 5, ;
Top = 34, ;
Width = 168, ;
Name = "Line1"


ADD OBJECT backyear AS commandbutton WITH ;
Top = 0, ;
Left = 0, ;
Height = 16, ;
Width = 16, ;
Picture = "backyear.bmp", ;
Caption = "", ;
TabIndex = 0, ;
TabStop = .F., ;
ToolTipText = "год назад", ;
Name = "BackYear"


ADD OBJECT backmonth AS commandbutton WITH ;
Top = 0, ;
Left = 16, ;
Height = 16, ;
Width = 16, ;
Picture = "bckmonth.bmp", ;
Caption = "", ;
TabIndex = 0, ;
TabStop = .F., ;
ToolTipText = "месяц назад", ;
Name = "BackMonth"


ADD OBJECT formonth AS commandbutton WITH ;
Top = 0, ;
Left = 145, ;
Height = 16, ;
Width = 16, ;
Picture = "formonth.bmp", ;
Caption = "", ;
TabIndex = 0, ;
TabStop = .F., ;
ToolTipText = "месяц вперёд", ;
Name = "ForMonth"


ADD OBJECT foryear AS commandbutton WITH ;
Top = 0, ;
Left = 161, ;
Height = 16, ;
Width = 16, ;
Picture = "foryear.bmp", ;
Caption = "", ;
TabIndex = 0, ;
TabStop = .F., ;
ToolTipText = "год вперед", ;
Name = "ForYear"


ADD OBJECT monthyear AS label WITH ;
FontBold = .T., ;
BackStyle = 0, ;
Caption = "", ;
Height = 16, ;
Left = 33, ;
Top = 0, ;
Width = 112, ;
TabIndex = 0, ;
Name = "MonthYear"


*-- Общая процедура выбора даты
PROCEDURE dateselection
Lparameters SelDay
if !empty(SelDay)
ThisForm.SelDate = ctod( ;
ltrim(SelDay)+'/'+ltrim(str(ThisForm.SelMonth))+'/'+ltrim(str(ThisForm.SelYear)))
endif
ThisForm.Release
ENDPROC


*-- Возвращает русское название месяца указанной даты
PROCEDURE rusmonth
Lparameter Date
Local m
m=month(Date)
do case
case m=1
return 'Январь'
case m=2
return 'Февраль'
case m=3
return 'Март'
case m=4
return 'Апрель'
case m=5
return 'Май'
case m=6
return 'Июнь'
case m=7
return 'Июль'
case m=8
return 'Август'
case m=9
return 'Сентябрь'
case m=10
return 'Октябрь'
case m=11
return 'Ноябрь'
case m=12
return 'Декабрь'
endcase
ENDPROC


PROCEDURE KeyPress
LPARAMETERS nKeyCode, nShiftAltCtrl
local sNN
#define _K_PageUp 18
#define _K_PageDown 3
#define _K_CtrlPageUp 31
#define _K_CtrlPageDown 30
#define _K_UpArrow 5
#define _K_DownArrow 24
#define _K_RightArrow 4
#define _K_LeftArrow 19
#define _K_Esc 27
#define _K_Backspace 127
#define _K_Tab 9
with ThisForm
do case
case nKeyCode = _K_Backspace or nKeyCode = _K_Esc
* Отказ от выбора
.SelDate = .InitialDate
.Release
case nKeyCode = _K_PageUp
* Месяц назад
.Init(gomonth(.SelDate,-1))
case nKeyCode = _K_PageDown
* Месяц вперед
.Init(gomonth(.SelDate, 1))
case nKeyCode = _K_CtrlPageUp
* Год назад
.Init(gomonth(.SelDate,-12))
case nKeyCode = _K_CtrlPageDown
* Год вперед
.Init(gomonth(.SelDate, 12))
case nKeyCode = _K_DownArrow
* На неделю вперед
do case
case .LastDay = .CurrentDay
sNN=ltrim(str(day(.CurrentDay)+dow(.FirstDay,2)-2)) && -1
.Button&sNN..SetFocus
case .CurrentDay+7 <= .LastDay
sNN=ltrim(str(day(.CurrentDay+6)+dow(.FirstDay,2)-1))
.Button&sNN..SetFocus
endcase
case nKeyCode = _K_UpArrow
* На неделю назад
do case
case .FirstDay = .CurrentDay
sNN=ltrim(str(day(.CurrentDay)+dow(.FirstDay,2))) && +1
.Button&sNN..SetFocus
case .CurrentDay-7 >= .FirstDay
sNN=ltrim(str(day(.CurrentDay-6)+dow(.FirstDay,2)-1))
.Button&sNN..SetFocus
endcase
case nKeyCode = _K_RightArrow
* На день вперед
if .CurrentDay = .LastDay
sNN=ltrim(str(day(.CurrentDay)+dow(.FirstDay,2)-2)) && -1
.Button&sNN..SetFocus
endif
case nKeyCode = _K_LeftArrow
* На день назад
if .CurrentDay = .FirstDay
sNN=ltrim(str(day(.CurrentDay)+dow(.FirstDay,2))) && +1
.Button&sNN..SetFocus
endif
endcase
endwith
ENDPROC


PROCEDURE Unload
clear TYPEAHEAD
* На случай, если такая переменная есть в вызывающей программе
* Так сейчас в TCalendar
store ThisForm.SelDate to m.selDate
* Если будут вызывать, как форму:
* do form ... to SomeMemvar
* след. команда обеспечивает возврат даты
return ThisForm.SelDate
ENDPROC


PROCEDURE Init
Lparameters InitDate, FormTop, FormLeft
local today,day,i,j,N,LabelN,ButtonN,left,top
with ThisForm
store iif(empty(InitDate),date(),InitDate) to today, .SelDate
.InitialDate = iif(empty(.InitialDate),m.today,.InitialDate)
.Firstday=m.today-day(m.today)+1
.LastDay=gomonth(.Firstday,1)-1
day = .Firstday
n=dow(.Firstday,2)
.MonthYear.Caption = padc(.RusMonth(m.today)+' '+str(year(m.today),4),22)
.SelMonth = month(m.today)
.SelYear = year(m.today)
.Top=iif(!empty(FormTop),FormTop,this.Top)
.Left=iif(!empty(FormLeft),FormLeft,this.Left)
if not .Initialized
for i=1 to 37
sN = ltrim(str(m.i))
.AddObject('Label'+sN,'DayLabel')
.AddObject('Button'+sN,'DayButton')
store 38+int((m.i-1)/7)*15 to .Button&sN..Top, .Label&sN..Top
store 4+(m.i-1)%7*25 to .Button&sN..Left, .Label&sN..Left
next
.Initialized = .T.
endif
for j=1 to n-1
sN = str(m.j,1)
store .F. to .Label&sN..Visible, .Button&sN..Visible
next
for j=1 to day(.LastDay)
sN = ltrim(str(m.N,2))
store str(m.j,3) to .Label&sN..Caption, .Button&sN..Caption
store .T. to .Label&sN..Visible, .Button&sN..Visible
if m.day = InitDate
.Button&sN..SetFocus
.CurrentDay = m.day
endif
day = m.day + 1
N = m.N + 1
next
for j=m.N to 37
sN = str(m.j,2)
store .F. to .Label&sN..Visible, .Button&sN..Visible
next
endwith
ENDPROC


PROCEDURE backyear.Click
ThisForm.Seldate = gomonth(ThisForm.Seldate,-12)
ThisForm.Init(ThisForm.SelDate)
ENDPROC


PROCEDURE backmonth.Click
ThisForm.Seldate = gomonth(ThisForm.Seldate,-1)
ThisForm.Init(ThisForm.SelDate)
ENDPROC


PROCEDURE formonth.Click
ThisForm.Seldate = gomonth(ThisForm.Seldate,1)
ThisForm.Init(ThisForm.SelDate)
ENDPROC


PROCEDURE foryear.Click
ThisForm.Seldate = gomonth(ThisForm.Seldate,12)
ThisForm.Init(ThisForm.SelDate)
ENDPROC


ENDDEFINE
*
*-- EndDefine: calendar
**************************************************


**************************************************
*-- Class: fcalendar (d:\jazyx\project\callstat\calend3.vcx)
*-- ParentClass: calendar (d:\jazyx\project\callstat\calend3.vcx)
*-- BaseClass: form
*-- Time Stamp: 01/07/05 01:53:01 AM
*-- Календарь-форма со всеми кнопками и лэйблами, без динамики - так все-таки быстрее
*
DEFINE CLASS fcalendar AS calendar


Top = 580
Left = 8
Height = 130
Width = 177
DoCreate = .T.
BackColor = RGB(210,208,200)
Caption = "Календарь"
initialized = .T.
Name = "fcalendar"
BLACKHEADER.FontBold = .T.
BLACKHEADER.Caption = "Пн Вт Ср Чт Пт"
BLACKHEADER.Height = 17
BLACKHEADER.Left = 5
BLACKHEADER.Top = 18
BLACKHEADER.Width = 125
BLACKHEADER.Name = "BLACKHEADER"
REDHEADER.FontBold = .T.
REDHEADER.Caption = "Сб Вс"
REDHEADER.ForeColor = RGB(200,0,0)
REDHEADER.Left = 130
REDHEADER.Top = 18
REDHEADER.Name = "REDHEADER"
LINE1.Name = "LINE1"
BACKYEAR.Name = "BACKYEAR"
BACKMONTH.Name = "BACKMONTH"
FORMONTH.Name = "FORMONTH"
FORYEAR.Name = "FORYEAR"
MONTHYEAR.Caption = " Сентябрь 2003 "
MONTHYEAR.Name = "MONTHYEAR"


ADD OBJECT label1 AS daylabel WITH ;
Caption = " 1", ;
Left = 2, ;
Top = 38, ;
Visible = .T., ;
Name = "Label1"


ADD OBJECT button1 AS daybutton WITH ;
Top = 38, ;
Left = 2, ;
FontName = "MS Sans Serif", ;
Caption = " 1", ;
Name = "Button1"


ADD OBJECT label2 AS daylabel WITH ;
Caption = " 2", ;
Left = 27, ;
Top = 38, ;
Visible = .T., ;
Name = "Label2"


ADD OBJECT button2 AS daybutton WITH ;
Top = 38, ;
Left = 27, ;
FontName = "MS Sans Serif", ;
Caption = " 2", ;
Name = "Button2"


ADD OBJECT label3 AS daylabel WITH ;
Caption = " 3", ;
Left = 52, ;
Top = 38, ;
Visible = .T., ;
Name = "Label3"


ADD OBJECT button3 AS daybutton WITH ;
Top = 38, ;
Left = 52, ;
FontName = "MS Sans Serif", ;
Caption = " 3", ;
Name = "Button3"


ADD OBJECT label4 AS daylabel WITH ;
Caption = " 4", ;
Left = 77, ;
Top = 38, ;
Visible = .T., ;
Name = "Label4"


ADD OBJECT button4 AS daybutton WITH ;
Top = 38, ;
Left = 77, ;
FontName = "MS Sans Serif", ;
Caption = " 4", ;
Name = "Button4"


ADD OBJECT label5 AS daylabel WITH ;
Caption = " 5", ;
Left = 102, ;
Top = 38, ;
Visible = .T., ;
Name = "Label5"


ADD OBJECT button5 AS daybutton WITH ;
Top = 38, ;
Left = 102, ;
FontName = "MS Sans Serif", ;
Caption = " 5", ;
Name = "Button5"


ADD OBJECT label6 AS daylabel WITH ;
Caption = " 6", ;
Left = 127, ;
Top = 38, ;
Visible = .T., ;
Name = "Label6"


ADD OBJECT button6 AS daybutton WITH ;
Top = 38, ;
Left = 127, ;
FontName = "MS Sans Serif", ;
Caption = " 6", ;
Name = "Button6"


ADD OBJECT label7 AS daylabel WITH ;
Caption = " 7", ;
Left = 152, ;
Top = 38, ;
Visible = .T., ;
Name = "Label7"


ADD OBJECT button7 AS daybutton WITH ;
Top = 38, ;
Left = 152, ;
FontName = "MS Sans Serif", ;
Caption = " 7", ;
Name = "Button7"


ADD OBJECT label8 AS daylabel WITH ;
Caption = " 8", ;
Left = 2, ;
Top = 53, ;
Visible = .T., ;
Name = "Label8"


ADD OBJECT button8 AS daybutton WITH ;
Top = 53, ;
Left = 2, ;
FontName = "MS Sans Serif", ;
Caption = " 8", ;
Name = "Button8"


ADD OBJECT label9 AS daylabel WITH ;
Caption = " 9", ;
Left = 27, ;
Top = 53, ;
Visible = .T., ;
Name = "Label9"


ADD OBJECT button9 AS daybutton WITH ;
Top = 53, ;
Left = 27, ;
FontName = "MS Sans Serif", ;
Caption = " 9", ;
Name = "Button9"


ADD OBJECT label10 AS daylabel WITH ;
Caption = "10", ;
Left = 52, ;
Top = 53, ;
Visible = .T., ;
Name = "Label10"


ADD OBJECT button10 AS daybutton WITH ;
Top = 53, ;
Left = 52, ;
FontName = "MS Sans Serif", ;
Caption = "10", ;
Name = "Button10"


ADD OBJECT label11 AS daylabel WITH ;
Caption = "11", ;
Left = 77, ;
Top = 53, ;
Visible = .T., ;
Name = "Label11"


ADD OBJECT button11 AS daybutton WITH ;
Top = 53, ;
Left = 77, ;
FontName = "MS Sans Serif", ;
Caption = "11", ;
Name = "Button11"


ADD OBJECT label12 AS daylabel WITH ;
Caption = "12", ;
Left = 102, ;
Top = 53, ;
Visible = .T., ;
Name = "Label12"


ADD OBJECT button12 AS daybutton WITH ;
Top = 53, ;
Left = 102, ;
FontName = "MS Sans Serif", ;
Caption = "12", ;
Name = "Button12"


ADD OBJECT label13 AS daylabel WITH ;
Caption = "13", ;
Left = 127, ;
Top = 53, ;
Visible = .T., ;
Name = "Label13"


ADD OBJECT button13 AS daybutton WITH ;
Top = 53, ;
Left = 127, ;
FontName = "MS Sans Serif", ;
Caption = "13", ;
Name = "Button13"


ADD OBJECT label14 AS daylabel WITH ;
Caption = "14", ;
Left = 152, ;
Top = 53, ;
Visible = .T., ;
Name = "Label14"


ADD OBJECT button14 AS daybutton WITH ;
Top = 53, ;
Left = 152, ;
FontName = "MS Sans Serif", ;
Caption = "14", ;
Name = "Button14"


ADD OBJECT label15 AS daylabel WITH ;
Caption = "15", ;
Left = 2, ;
Top = 68, ;
Visible = .T., ;
Name = "Label15"


ADD OBJECT button15 AS daybutton WITH ;
Top = 68, ;
Left = 2, ;
FontName = "MS Sans Serif", ;
Caption = "15", ;
Name = "Button15"


ADD OBJECT label16 AS daylabel WITH ;
Caption = "16", ;
Left = 27, ;
Top = 68, ;
Visible = .T., ;
Name = "Label16"


ADD OBJECT button16 AS daybutton WITH ;
Top = 68, ;
Left = 27, ;
FontName = "MS Sans Serif", ;
Caption = "16", ;
Name = "Button16"


ADD OBJECT label17 AS daylabel WITH ;
Caption = "17", ;
Left = 52, ;
Top = 68, ;
Visible = .T., ;
Name = "Label17"


ADD OBJECT button17 AS daybutton WITH ;
Top = 68, ;
Left = 52, ;
FontName = "MS Sans Serif", ;
Caption = "17", ;
Name = "Button17"


ADD OBJECT label18 AS daylabel WITH ;
Caption = "18", ;
Left = 77, ;
Top = 68, ;
Visible = .T., ;
Name = "Label18"


ADD OBJECT button18 AS daybutton WITH ;
Top = 68, ;
Left = 77, ;
FontName = "MS Sans Serif", ;
Caption = "18", ;
Name = "Button18"


ADD OBJECT label19 AS daylabel WITH ;
Caption = "19", ;
Left = 102, ;
Top = 68, ;
Visible = .T., ;
Name = "Label19"


ADD OBJECT button19 AS daybutton WITH ;
Top = 68, ;
Left = 102, ;
FontName = "MS Sans Serif", ;
Caption = "19", ;
Name = "Button19"


ADD OBJECT label20 AS daylabel WITH ;
Caption = "20", ;
Left = 127, ;
Top = 68, ;
Visible = .T., ;
Name = "Label20"


ADD OBJECT button20 AS daybutton WITH ;
Top = 68, ;
Left = 127, ;
FontName = "MS Sans Serif", ;
Caption = "20", ;
Name = "Button20"


ADD OBJECT label21 AS daylabel WITH ;
Caption = "21", ;
Left = 152, ;
Top = 68, ;
Visible = .T., ;

Name = "Label21"


ADD OBJECT button21 AS daybutton WITH ;
Top = 68, ;
Left = 152, ;
FontName = "MS Sans Serif", ;
Caption = "21", ;
Name = "Button21"


ADD OBJECT label22 AS daylabel WITH ;
Caption = "22", ;
Left = 2, ;
Top = 83, ;
Visible = .T., ;
Name = "Label22"


ADD OBJECT button22 AS daybutton WITH ;
Top = 83, ;
Left = 2, ;
FontName = "MS Sans Serif", ;
Caption = "22", ;
Name = "Button22"


ADD OBJECT label23 AS daylabel WITH ;
Caption = "23", ;
Left = 27, ;
Top = 83, ;
Visible = .T., ;
Name = "Label23"


ADD OBJECT button23 AS daybutton WITH ;
Top = 83, ;
Left = 27, ;
FontName = "MS Sans Serif", ;
Caption = "23", ;
Name = "Button23"


ADD OBJECT label24 AS daylabel WITH ;
Caption = "24", ;
Left = 52, ;
Top = 83, ;
Visible = .T., ;
Name = "Label24"


ADD OBJECT button24 AS daybutton WITH ;
Top = 83, ;
Left = 52, ;
FontName = "MS Sans Serif", ;
Caption = "24", ;
Name = "Button24"


ADD OBJECT label25 AS daylabel WITH ;
Caption = "25", ;
Left = 77, ;
Top = 83, ;
Visible = .T., ;
Name = "Label25"


ADD OBJECT button25 AS daybutton WITH ;
Top = 83, ;
Left = 77, ;
FontName = "MS Sans Serif", ;
Caption = "25", ;
Name = "Button25"


ADD OBJECT label26 AS daylabel WITH ;
Caption = "26", ;
Left = 102, ;
Top = 83, ;
Visible = .T., ;
Name = "Label26"


ADD OBJECT button26 AS daybutton WITH ;
Top = 83, ;
Left = 102, ;
FontName = "MS Sans Serif", ;
Caption = "26", ;
Name = "Button26"


ADD OBJECT label27 AS daylabel WITH ;
Caption = "27", ;
Left = 127, ;
Top = 83, ;
Visible = .T., ;
Name = "Label27"


ADD OBJECT button27 AS daybutton WITH ;
Top = 83, ;
Left = 127, ;
FontName = "MS Sans Serif", ;
Caption = "27", ;
Name = "Button27"


ADD OBJECT label28 AS daylabel WITH ;
Caption = "28", ;
Left = 152, ;
Top = 83, ;
Visible = .T., ;
Name = "Label28"


ADD OBJECT button28 AS daybutton WITH ;
Top = 83, ;
Left = 152, ;
FontName = "MS Sans Serif", ;
Caption = "28", ;
Name = "Button28"


ADD OBJECT label29 AS daylabel WITH ;
Caption = "29", ;
Left = 2, ;
Top = 98, ;
Visible = .T., ;
Name = "Label29"


ADD OBJECT button29 AS daybutton WITH ;
Top = 98, ;
Left = 2, ;
FontName = "MS Sans Serif", ;
Caption = "29", ;
Name = "Button29"


ADD OBJECT label30 AS daylabel WITH ;
Caption = "30", ;
Left = 27, ;
Top = 98, ;
Visible = .T., ;
Name = "Label30"


ADD OBJECT button30 AS daybutton WITH ;
Top = 98, ;
Left = 27, ;
FontName = "MS Sans Serif", ;
Caption = "30", ;
Name = "Button30"


ADD OBJECT label31 AS daylabel WITH ;
Left = 52, ;
Top = 98, ;
Visible = .F., ;
Name = "Label31"


ADD OBJECT button31 AS daybutton WITH ;
Top = 98, ;
Left = 52, ;
FontName = "MS Sans Serif", ;
Name = "Button31"


ADD OBJECT label32 AS daylabel WITH ;
Left = 77, ;
Top = 98, ;
Visible = .F., ;
Name = "Label32"


ADD OBJECT button32 AS daybutton WITH ;
Top = 98, ;
Left = 77, ;
FontName = "MS Sans Serif", ;
Name = "Button32"


ADD OBJECT label33 AS daylabel WITH ;
Left = 102, ;
Top = 98, ;
Visible = .F., ;
Name = "Label33"


ADD OBJECT button33 AS daybutton WITH ;
Top = 98, ;
Left = 102, ;
FontName = "MS Sans Serif", ;
Name = "Button33"


ADD OBJECT label34 AS daylabel WITH ;
Left = 127, ;
Top = 98, ;
Visible = .F., ;
Name = "Label34"


ADD OBJECT button34 AS daybutton WITH ;
Top = 98, ;
Left = 127, ;
FontName = "MS Sans Serif", ;
Name = "Button34"


ADD OBJECT label35 AS daylabel WITH ;
Left = 152, ;
Top = 98, ;
Visible = .F., ;
Name = "Label35"


ADD OBJECT button35 AS daybutton WITH ;
Top = 98, ;
Left = 152, ;
FontName = "MS Sans Serif", ;
Name = "Button35"


ADD OBJECT label36 AS daylabel WITH ;
Left = 2, ;
Top = 113, ;
Visible = .F., ;
Name = "Label36"


ADD OBJECT button36 AS daybutton WITH ;
Top = 113, ;
Left = 2, ;
FontName = "MS Sans Serif", ;
Name = "Button36"


ADD OBJECT label37 AS daylabel WITH ;
Left = 27, ;
Top = 113, ;
Visible = .F., ;
Name = "Label37"


ADD OBJECT button37 AS daybutton WITH ;
Top = 113, ;
Left = 27, ;
FontName = "MS Sans Serif", ;
Name = "Button37"


ENDDEFINE
*
*-- EndDefine: fcalendar
**************************************************


**************************************************
*-- Class: daybutton (d:\jazyx\project\callstat\calend3.vcx)
*-- ParentClass: commandbutton
*-- BaseClass: commandbutton
*-- Time Stamp: 01/06/05 04:09:13 AM
*
DEFINE CLASS daybutton AS commandbutton


Height = 15
Width = 25
Caption = ""
StatusBarText = "MouseClick or Enter to select Date"
Style = 1
ToolTipText = ""
TerminateRead = .T.
Visible = .F.
Name = "daybutton"


PROCEDURE GotFocus
ThisForm.CurrentDay = ctod(This.Caption+'/'+str(ThisForm.SelMonth,2)+'/'+str(ThisForm.SelYear,4))
ENDPROC


PROCEDURE Click
ThisForm.DateSelection(This.Caption)
ENDPROC


ENDDEFINE
*
*-- EndDefine: daybutton
**************************************************


**************************************************
*-- Class: daylabel (d:\jazyx\project\callstat\calend3.vcx)
*-- ParentClass: label
*-- BaseClass: label
*-- Time Stamp: 01/06/05 03:49:06 AM
*
DEFINE CLASS daylabel AS label


FontName = "MS Sans Serif"
FontSize = 8
BackStyle = 0
Caption = ""
Comment = "Нашлепка сверху на невидимую клавишу"
Height = 15
Width = 25
Name = "daylabel"


ENDDEFINE
*
*-- EndDefine: daylabel
**************************************************


**************************************************
*-- Class: tcalendar (d:\jazyx\project\callstat\calend3.vcx)
*-- ParentClass: container
*-- BaseClass: container
*-- Time Stamp: 01/10/05 02:49:11 AM
*-- Компонент для ввода или выбора даты, вызывает форму-календарь
*
DEFINE CLASS tcalendar AS container


Width = 90
Height = 23
BackStyle = 0
BorderWidth = 0
Name = "tcalendar"


ADD OBJECT date AS textbox WITH ;
FontName = "MS Sans Serif", ;
FontSize = 8, ;
Alignment = 0, ;
Value = { . . }, ;
Format = "D", ;
Height = 23, ;
InputMask = "", ;
ReadOnly = .F., ;
Width = 67, ;
SelectedBackColor = RGB(0,0,128), ;
Name = "Date"


ADD OBJECT choosedate AS commandbutton WITH ;
Left = 67, ;
Height = 23, ;
Width = 23, ;
FontName = "MS Sans Serif", ;
FontSize = 8, ;
Picture = "calend31.bmp", ;
Caption = "", ;
ToolTipText = "Выбор даты", ;
Name = "ChooseDate"


PROCEDURE Init
set classlib to calend3.vcx additive
ENDPROC


PROCEDURE date.KeyPress
LPARAMETERS nKeyCode, nShiftAltCtrl
if nKeyCode = 160 && Alt+DownArrow
This.Parent.ChooseDate.Click
endif
ENDPROC


PROCEDURE choosedate.KeyPress
LPARAMETERS nKeyCode, nShiftAltCtrl
if nKeyCode = 160 && Alt+DownArrow
This.Click
endif
ENDPROC


PROCEDURE choosedate.Click
*local Dt, Tp, Lft, frm
*Dt = iif(empty(This.Parent.Date.Value),date(),This.Parent.Date.Value)
*Tp = ThisForm.Top + This.Parent.Top + This.Top + This.Parent.Height + 46
*Lft = ThisForm.Left+This.Parent.Left+This.Left+This.Width-174 &&-frmCalendar.Width+2
*frmCalendar.Left = iif(frmCalendar.Left<0,ThisForm.Left+This.Parent.Left+4,frmCalendar.Left)
*DO FORM FCldr NAME m.frm WITH Dt, Tp, Lft TO Dt LINKED
*This.Parent.Date.Value = Dt
*release m.frm

private SelDate
SelDate={..}
*frmCalendar = CreateObject('Calend3.FCalendar', iif(empty(This.Parent.Date.Value),date(),This.Parent.Date.Value))
frmCalendar = CreateObject('Calend3.Calendar', iif(empty(This.Parent.Date.Value),date(),This.Parent.Date.Value))
frmCalendar.Visible = .f.
frmCalendar.BackColor = This.Parent.Parent.BackColor
* Вычисление координат "под собой"
frmCalendar.Top = ThisForm.Top+This.Parent.Top+This.Top+This.Parent.Height + 46
frmCalendar.Left = ThisForm.Left+This.Parent.Left+This.Left+This.Width-frmCalendar.Width+3
*frmCalendar.Left = iif(frmCalendar.Left<0,ThisForm.Left+This.Parent.Left+4,frmCalendar.Left)
frmCalendar.Left = iif(frmCalendar.Left<0,2,frmCalendar.Left)
frmCalendar.Show(1) && Modal
This.Parent.Date.Value=m.SelDate
ENDPROC


ENDDEFINE
*
*-- EndDefine: tcalendar
**************************************************
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33279266
Crispy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А все-таки интересно - чем обычный календарь не подошел?
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33279711
Crispy:

А я его и не пробовал )
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33280984
Crispy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А зря.
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33607326
k_oleg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
если ещё надо:
в utils.prg в определение класса
DEFINE CLASS cDate AS FORM

добавь строку:
desktop=.t.
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33904384
Penner
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
посмотри там же другие классы-календари
...
Рейтинг: 0 / 0
Класс куда-то спрятался.
    #33961683
Sergey Ch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Модератор: В связи со странной атакой роботов-спаммеров именно на это сообщения я его закрываю...
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Класс куда-то спрятался.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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