Доработка дизайнера FR3
Как доработать функционал дизайнера? Хочу кнопку добавить или пункт меню, ну чтобы сохранять отчёт в поле БД, а не могу!!!
В 2.51 сделал наследника от дизайнера, навернул в нём всё что нужно, присвоил fr_Class.frDesignerClass имя наследника и всё! А тут даже просто пустого наследника не сделаешь, делаю тоже самое, а при вызове метода DesignReport вылетают три ошибки и всё .
Как добавить кнопки на панели или пункты в меню?? Кто-нибудь знает?
Заранее спасибо!
В 2.51 сделал наследника от дизайнера, навернул в нём всё что нужно, присвоил fr_Class.frDesignerClass имя наследника и всё! А тут даже просто пустого наследника не сделаешь, делаю тоже самое, а при вызове метода DesignReport вылетают три ошибки и всё .
Как добавить кнопки на панели или пункты в меню?? Кто-нибудь знает?
Заранее спасибо!
Комментарии
with TfrxDesignerForm(Sender) do
begin
FileMenu.Items.Add(...)
end;
frxDesignerClass := TfrxDesignerForm;
Lines := Report.ScriptText; (Report = nil)
метода TfrxDesignerForm.CreateWorkspace;
procedure TfrxDesignerForm.UpdateRecentFiles(NewFile: String);
она производит манипуляции со списком открытых файлов и пунктами меню.
while FileMenu.Items[FRecentMenuIndex] <> SepMI4 do
FileMenu.Items[FRecentMenuIndex].Free;
Дело в том, что переменная FRecentMenuIndex определяется как
FRecentMenuIndex := FileMenu.IndexOf(SepMI4);
в методе Init, который вызывается (в FormCreate) раньше, чем происходит обработка события дизайнера OnShow. Поэтому, при добавлении пунктов в меню File (в событии OnShow) выше чем разделитель SepMI4, переменная FRecentMenuIndex хранит уже не тот индекс.
Надо бы ещё раз добвать строчку FRecentMenuIndex := FileMenu.IndexOf(SepMI4); после обработки OnShow в методе FormCreate
Маленький вопрос, по поводу дизайнера
Если он запускается в модальном режиме, то зачем ,простите, кнопка "свернуть".
В MDI-приложениях это не очень удобно.
Да и вообще зачем эта модальность?
Заранее благодарен за ответ