|
|
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Уважаемый Мировой Разум!! Вот - попытался мигрировать в наш проект с базовыми объектами PFC от PB5 объект календарик из PFC от PB9. Все вроде хорошо, кроме одного... Что есть: DW FreeForm с двумя полями дат с маской dd/mm/yyyy hh24:mi. При отсутствии фокуса на них все отображается отлично - например, дата 12/03/2005 00:00. Однако, как только в любое из полей попадает фокус - маска становится dd/mm/yyyy (без элементов времени)!! Редактировать время не дает... Зараза... Так и должно быть?? Или я что-то упустил? может у кого есть идеи?? Чего копать в этом направлении? ПС: после того, как контрол теряет фокус внутри DW - маска обратно не возвращается, если дату поменяли. В противном случае - маска остается прежней... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 16:24 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Товарищ скромно умолчал, на какой версии эхотага это происходит, и не забыли ли проставить для этого поля маску как для просмотра, так и для редактирования ;). ____________________________________ - Гарфилд, мышь! - Спасибо, я сыт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 16:41 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Совсем даже не умолчал - на 9... В теме сообщения - PB9. Маску только что поставил и на Edit и на Format, причем даже галку Use Format выставил. Не помогло :( ПС: интересный глюк! Когда становишься на одно из этих полей и жмешь на клавиатуре кнопку вниз, выдается подозрительное сообщение: 'Item "" doesn't pass validation test' после чего итем таки становится пустым... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 16:48 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Еще один интересный момент: поставил маску dd/mm/yyyy hh:mm. Однако когда контрол получает фокус (конкретная колонка) маска в поле меняется на dd.mm.yyyy (разделитель - точка вместо '/') Может где в баггере посоветуете поставить точку останова и последить?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 16:50 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Вот - иллюстрация живая... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 17:23 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Неплохо бы писать еще и номер билда - ибо мне помнится, что в PB9 они фиксили что-то, связанное с масками, после PB9.0 GA. Но мне почему-то кажется, что дело не в этом. Возможно, календарь рассчитан только на ввод даты, а время выкидывает нафиг... ____________________________________ - Гарфилд, мышь! - Спасибо, я сыт! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 17:47 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
PB 9.0.2 7509 Dim2000Возможно, календарь рассчитан только на ввод даты, а время выкидывает нафиг... И тут Вы соввершенно правы! Я расковырял сырцы PFC... Они хотя бы просто заложились на тип Date (вместо DateTime!!!) и полносью игнорируют маску поля при установке значения выбранного времени (функция of_setDate() в pfc_u_calendar). Я уже даже придумал что нужно расковырять, чтоб обойти такой подход... НО!!! Загвоздка в одном... Чтобы пользователю все-же давали редактировать время вручную!!! То есть чтоб маска не сбрасывалась из dd/mm/yyyy hh24:mi в dd/mm/yyyy... Так что теперь вопрос в одном - как бы это обойти?? Что самое печальное, как-то все хитро получается... Я в рантайме пытался получить GetFormat()... Но... Везде, где я догадался поставить breakpoint - везде ТОЛЬКО правильный формат!! (т.е. dd/mm/yyyy hh24:mi) Подскажите, где все же можно было бы увидеть корявость с изменением маски??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 17:53 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
при использовании календаря PFC column становится типа ddlb, смотреть pfc_u_calendar.of_register(string as_dwcolumn, integer ai_style) и соответственно формат отображения берётся из системных Windows'овских Regional Options ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 18:02 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
alexis glinskiпри использовании календаря PFC column становится типа ddlb, смотреть pfc_u_calendar.of_register(string as_dwcolumn, integer ai_style) и соответственно формат отображения берётся из системных Windows'овских Regional Options ... Спасибо большое за комментарий!! Там не догадался посмотреть... А в каком месте выбирается/устанавливается отображаемое значение для ddlb?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 18:13 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
alexis glinskiпри использовании календаря PFC column становится типа ddlb, смотреть pfc_u_calendar.of_register(string as_dwcolumn, integer ai_style) и соответственно формат отображения берётся из системных Windows'овских Regional Options ...Во-первых - преобразования в ddlb при желании можно избежать iuo_calendar.of_Register("xxx",iuo_calendar.none) и кажется по умолчанию именно так и происходит. Во-вторых - установка выбранного значения происходит при помощи dw.SetText(...), а текст форматируется в сответствии с of_setdateformat(...) Изначально формат - пустая строка. какой будет формат в результате String(your_date,'') ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 18:39 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
ЗоринАндрейВо-первых - преобразования в ddlb при желании можно избежать iuo_calendar.of_Register("xxx",iuo_calendar.none) и кажется по умолчанию именно так и происходит. Но почему-то при таком раскладе не появляется выпадающий календарик... Зачем же мне его инициализить чтоб календарика не было??? Очень интересно чтоб была и маска ввода и выпадающий календарик... ЗоринАндрей Во-вторых - установка выбранного значения происходит при помощи dw.SetText(...), а текст форматируется в сответствии с of_setdateformat(...) Изначально формат - пустая строка. какой будет формат в результате String(your_date,'') ? Да, так и есть... Спасибо!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 19:07 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Vadim RomanenkoОчень интересно чтоб была и маска ввода и выпадающий календарик... Нарисуй кнопку и в buttonclicked напиши if dwo.name = 'моякнопка' then li_rc = this.SetColumn('мойColumn') if li_rc = 1 then this.Event pfc_DDCalendar( ) end if При известной ловкости рук и после медитации над dw.Modify('create ... ') можно сделать кнопку динамически создаваемой. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.03.2005, 19:48 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
:) Наверное имеет смысл расширить PFC еще одной опцией - STORE например... Наверное так и попробую сделать! Спасибо за комментарии и советы!! ПС: Если у кого есть идеи по более малокровному пути - все еще имеет смысл ;) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2005, 12:24 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
я скачал где-то hepek_calendar -- там два режима: со временем и без. приделал его к datawindow, обработав события pbm_dwndropdown и doubleclicked ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2005, 16:00 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
..причём скачал чуть ли не с www.hepek.com, раздел "free objects" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2005, 16:04 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
Там есть одна ГРОМАДНАЯ проблема: полное отсутствие маски :( Как и в ПФСшном объекте. А если клиент не хочет пользовацца календарем? Ему быстрее набрать??? Воооот... В этом и состоит трабла... ПС: То есть я тоже скачал этот объект :) нашел тож в гугле ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.03.2005, 18:49 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
нормально всё с маской: ставишь на поле editmask, а календарь вешаешь на событие doubleclicked ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2005, 13:17 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
savosin_sergeyнормально всё с маской: ставишь на поле editmask, а календарь вешаешь на событие doubleclicked Это в ПФСшном объекте?? А как там можно назначить евент, на котором календарь висит-то??? У меня объект, наследованный от u_dw, в конструкторе - такой код: of_SetDropDownCalendar(true) iuo_calendar.of_SetDateFormat("dd/mm/yyyy hh:mm") iuo_calendar.of_Register('dbegin', iuo_calendar.NONE) iuo_calendar.of_Register('dend', iuo_calendar.NONE) на баблклик никакой календарик не появляется :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2005, 17:59 |
|
||
|
PFC, PB9 - что не так при использовании u_calendar
|
|||
|---|---|---|---|
|
#18+
savosin_sergeyнормально всё с маской: ставишь на поле editmask, а календарь вешаешь на событие doubleclicked УРРРРРРАААААААА!!!!!!!!!! Не надо ничего переписывать!!! всего-лишь дописываем немножко u_dw: of_doubleclicked(...): ... //по doubleClick вызываем календарик в случае необходимости if isValid(iuo_calendar) then if iuo_calendar.of_isRegistered(adwo_obj.name) then post event dropdown() end if end if ... Инициализация в любом u_dw.construcor: of_SetDropDownCalendar(true) iuo_calendar.of_Register(iuo_calendar.NONE) //Инициализим все поля с датой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.03.2005, 18:13 |
|
||
|
|

start [/forum/topic.php?fid=15&fpage=89&tid=1338473]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
45ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
2ms |
| others: | 242ms |
| total: | 392ms |

| 0 / 0 |
