Обсуждение:Процедуры диалога Даты, Периода Дат, Даты+Время
0 (0)
Обсуждение:Процедуры диалога Даты, Периода Дат, Даты+Время ( Обсуждение примера 14.01.2005 21:09 )
0(0)Во время работы столкнулся с проблемой что в RSL нет функции получения из диалога Времени, наподобие системной GetDate
Отсюда выросла небольшая библиотечка
Работает тока с библиотекой VCH 1.10
Посмотреть пример
>> Ответитьконечно, хорошо, но зачем (только) для всего этого целый VCH? - ( Adyan_N 17.01.2005 11:58 )
0(0)Not specified
>> ОтветитьЗамечание логичное :-) А для того что он есть и почему бы им не пользоваться??? :-) ( dik 17.01.2005 12:30 )
0(0)А если уж чуть посерьёзней
С помощью наследования и VCH хорошо дорисовывать или изменять существующие классы диалога
3 процедурки - введены для упрощения вызовов - но надо понимать всегда можно работать напрямую с классами
например в клнечном коде надо было логику ввести по получению периода дат
вот результат
/*------------------------------------------------------------------*/ private class (TFrmDatePeriod) TПериодДат (_Дата:date,_Дата2:date,_Заголовок:string) InitTFrmDatePeriod(_Дата,_Дата2,_Заголовок); lblDate2.Color = Red; lblDate2.Text("ПО ДАТУ"); //.................... MACRO editDateOnChange editDate2.Value(editDate.Value+30); // Вот здесь ЛОГИКА!!! END; end; /*------------------------------------------------------------------*/ private Macro ПолучитьПериодДат(Дата1:date,Дата2:date,Заголовок:string) private var Диалог:object, РежимВыхода=false; Диалог=TПериодДат(Дата1,Дата2,Заголовок); _SetEventDelay(100); // DebugBreak; Диалог.ShowModal; РежимВыхода=Диалог.РежимВыхода; if (РежимВыхода)setparm(0,Диалог.Дата); setparm(1,Диалог.Дата2);end; Диалог.Dispose;Диалог=null; return РежимВыхода; End;
С уважением
>> Ответить