Есть ли управляемый Datepicker

отредактировано December 2010 Раздел: FastReport 4.0
Дело такое - есть система учёта, написанная в C++ Builder'е и вызываемые оттуда отчёты в fr3-формате. Перед выводом отчёта появляется диалоговое окно с выбором дат, используется tfrxDateEditControl, и в его основе TDateTimePicker в Delphi. Основа последнего - компонент в MFC, создаваемый функцией InitCommonControlsEx. Он устроен так, что при вводе только числа или только месяца после ввода двух чисел не происходит переход от числа к месяцу и от месяца к году, нужно, чтоб он происходил. Все эти вещи прописаны в глубине MFC, из-за чего добавить этот переход не понятно как.

Я хочу узнать, какая возможна замена. Есть ли сторонние компоненты DatePicker или можно как-то приспособить WPF под Delphi, чтоб сделать настраиваемый компонент для FastReport, который мог б использоваться в C++ Builder. Или ещё как-то.

Комментарии

  • Stalker4Stalker4 123
    отредактировано 23:48
    написал: »
    Я хочу узнать, какая возможна замена. Есть ли сторонние компоненты DatePicker или можно как-то приспособить WPF под Delphi, чтоб сделать настраиваемый компонент для FastReport, который мог б использоваться в C++ Builder. Или ещё как-то.
    Можешь взять TfrxDateEdit из моего frxStAddDialogControls 3.1 (см. сайт в подписи), он основан на TDateEdit из RxLib.
    Или сделай сам подобную обертку над твоим любимым компонентом для ввода даты.
  • отредактировано 23:48
    написал: »
    Дело такое - есть система учёта, написанная в C++ Builder'е и вызываемые оттуда отчёты в fr3-формате. Перед выводом отчёта появляется диалоговое окно с выбором дат, используется tfrxDateEditControl, и в его основе TDateTimePicker в Delphi. Основа последнего - компонент в MFC, создаваемый функцией InitCommonControlsEx...
    Нет там MFC. В основном на "сях" ядро писано. :)
  • отредактировано 23:48
    Stalker4 написал: »
    Можешь взять TfrxDateEdit из моего frxStAddDialogControls 3.1 (см. сайт в подписи), он основан на TDateEdit из RxLib.
    Или сделай сам подобную обертку над твоим любимым компонентом для ввода даты.
    Это вариант, только я там не нашёл инструкцию по установке. А если методом тыка, то не находит он какой-то RxCtl4, я и представления не имею, где его искать.
  • Stalker4Stalker4 123
    отредактировано 23:48
    написал: »
    Это вариант, только я там не нашёл инструкцию по установке. А если методом тыка, то не находит он какой-то RxCtl4, я и представления не имею, где его искать.
    А библиотека RxLib у вас установлена ?


    Ставите RxLib 2.75 или ее модификации.
    Правите при необходимости файл frxStAddDialogControls.inc.
    В зависимости от версии вашей Delphi (4-7) выбираете dpk файл и устанавливаете его.
  • отредактировано 23:48
    Мне удалось найти решение на базе TJvDatePickerEdit. Только теперь никак не могу разобраться в одной вещи - когда я получил dcu-файл, что с ним делать, чтоб приложение на C++ Builder, использующее компонент TfrxReport и передающее ему fr3-файл строками
        DM->frxReport1->LoadFromFile( ExtractFilePath( Application->ExeName ) + "reports\\PROCESSING\\"+ListView1->Items->Item[ListView1->ItemIndex]->Caption+".fr3" );
    
        DM->frxReport1->Variables->Variables["Login"] = "'"+DM->Login.Trim()+"'";
        DM->frxReport1->Variables->Variables["Password"] = "'"+DM->Password.Trim()+"'";
        DM->frxReport1->Variables->Variables["Connection"] = "'"+DM->pFIBDatabase1->DBName.Trim()+"'";
        DM->frxReport1->Variables->Variables["Role"] = "'"+DM->loadRole()+"'";
    
        if (DM->frxReport1->PrepareReport())
          DM->frxReport1->ShowPreparedReport();
    
    знало, где искать новый компонент, если в fr3 файле вместо
    <TfrxDateEditControl Name="DateEdit1" Left="28" Top="24" Width="93" Height="21" Color="-2147483643" Date="39814,5477541319" Time="39814,5477541319"/>
    
    будет указан компонент с другим названием? Т. е., допустим, этот XML в fr3-файле я поменяю, а что нужно сделать, чтоб новый компонент нормально выводился, если для него есть dcu?

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.