Нет кнопок в frxPreview

отредактировано 00:55 Раздел: FastReport 3.0
В версиях 2.* кнопочки на окне Превью были видны как в дизайне, так и рантайме. В версии 3.18 кнопок на TfrxPreview нет ни там, ни там. Хотя всплывающее по умолчанию окно их имеет.
Как высветить кнопки?

Комментарии

  • отредактировано 00:55
    написал:
    Как высветить кнопки?
    Никак.
    Только самому нарисовать и сделать по этим кнопкам соответствующие обработчики.
  • отредактировано 00:55
    Это что ж получается? В старых версиях кнопки управления были доступны.
    В новой версии по прежнему есть у TfrxReport свойство PreviewOptions->Buttons, которое должно эти кнопки делать видимыми или невидимыми.
    Более того. В старой версии был доступ к TfrPreview.Window.Panel1, на которую можно было сажать свои кнопки.

    Вопрос: зачем в новой версии так резко снижена функциональность и открытость Preview? Неужели по многочисленным просьбам пользоватиелей?

    Если у кого-то есть возможность, пожалуйста, вышлите картинки с кнопок оригинального Превью.

  • отредактировано October 2005
    PreviewOptions->Buttons влияет на стандартное окно превью.
    Компонент TfrPreview - только отображает отчет - нужную вам функциональность делайте сами. В этом вся его гибкость
  • отредактировано 00:55
    Гибкость фановой трубы.

    Зачем в библиотеке существует целый открытый класс TfrxPreviewForm, к которому никак не достучаться? Зачем разработчик описывал методы, события, тестировал их? Чтобы скрыть потом от конечного пользователя?
    Здорово!

    Может ещё половину классов закрыть? Уж программисты-покупатели сами как-нибудь извернуться. Ну потратят недельку-другую. Свой код напишут да картинки нарисуют. Да и нужна ли в таком случае вся эта библиотека?

    Мне кажется, разработчики слишком увлеклись идеей "чёрного ящика". Вместе с водой выплеснули кое-что ценное.

  • отредактировано 00:55
    написал:
    Зачем в библиотеке существует целый открытый класс TfrxPreviewForm, к которому никак не достучаться?
    Почему не достучаться... События, методы доступны..
    Этот класс сделан именно для создания собственных окон просмотра.
    А для простого просмотра без собсвенног окна используется метод:
    frxReport1.showReport;
    Там есть и кнопки и настраивается внешний вид и количество и все остальное...
  • отредактировано 00:55
    написал:
    Этот класс сделан именно для создания собственных окон просмотра

    Замечательно! Только к этому классу ни один отчёт не подцепишь. Потому, что свойства TfrxPreviewForm.Preview, TfrxPreviewForm.Report, TfrxReport.PreviewForm ТОЛЬКО НА ЧТЕНИЕ.
    Можно вывести этот класс на форму, полюбоваться им. Но подключить его к своим отчётам - нельзя. По крайней мере, я не смог.
  • отредактировано 00:55
    Хм... Это пробовали?
    frxReport1.Preview := frxPreview1;
  • отредактировано 00:55
    Ура! Извернувшись ужом, нашёл выход:
     frxPreviewForm1 := TfrxPreviewForm.CreateParented(Panel1.Handle);
      frxPreviewForm1.Visible := true;
      frxPreviewForm1.Align := alClient;
      frxPreviewForm1.Preview.Name := 'MyPreview1';
      frxReport1.Preview := frxPreviewForm1.Preview;
    

    Так сказать, недокументированные возможности. А были бы документированы - сэкономил бы день ;) !
  • отредактировано 00:55
    написал:
    Но подключить его к своим отчётам - нельзя
    А что ты вкладываешь в слово - подключить?
    Просматривать собственные отчеты или что?
    Поподробнее объясни.
  • отредактировано 00:55
    Потрясающий ход мыслей. Человек спрашивает "Как высветить кнопки?", а на самом деле ему нужно встроить стандартное окно превью в свою панель.
    Ребята, пишите конкретно, что вам нужно.
  • отредактировано 00:55
    Ну почему всё так сложно?

    Привязал я TfrxPreviewForm окольными путями к frxReport1.Preview.
    А кнопки экспорта попрежнему не работают.
    Отчёт загружается, прокручивается, маштабируется. Можно его даже сохранить. Но - без экспорта.
    Да и прокрутки листа нет. Куда девались скроллинги? Как из реанимировать?

    Короче, сделать быстро и просто свой превью не получается. Не зря в Demo нет ни одного примера с Preview. Сыровато, сыровато.
  • отредактировано 00:55
    написал:
    Потрясающий ход мыслей. Человек спрашивает "Как высветить кнопки?", а на самом деле ему нужно встроить стандартное окно превью в свою панель.
    Ребята, пишите конкретно, что вам нужно.

    Конкретно? Нужен пример использования TfrxPreview !!!
    Не та отписка, что даётся в хелпе. А РАБОТАЮЩИЙ пример.
    Всякие встраивания "стандартного окна" - не от хорошей жизни. Переписывать половину логики этой части библиотеки - как-то не хочется. Да ещё угадывать, куда разработчики спрятали "ниточки", за которые дёргать.
  • отредактировано 00:55
    Во многих организациях есть свои стандарты эргономики, поэтому закрепленные кнопки, контекстные меню и т.д. визуальных компонент только затрудняют использование. Методы, которые дергались по нажатию кнопок то все равно остались. При встраивании компонент например, в панель, кнопки -то дизайнят не на панели, а на тулбаре, принадлежащем форме, в которую данная панель входит. ПОэтому при использовании TfrxPreview как отдельный встраиваемый компонент нет смысла лепить на него кнопки.
  • отредактировано 00:55
    написал:
    Во многих организациях есть свои стандарты эргономики, поэтому закрепленные кнопки, контекстные меню и т.д. визуальных компонент только затрудняют использование.

    Всё логично. Но кто мешал всю логику (не графику) поместить в те же TAction?

    Ведь если вручную заполнять и Caption, Hint у кнопок, то как быть с мультиязычностью? Тоже руками?
    Куда проще было бы дать TfrxPreview свойство ImageList. Или просто дать прямой доступ к кнопкам, как это было сделано в 2.5. Хочешь свою графику? Валяй!

    В чём великий смысл прописать кучу обработчиков для стандартного PreviewForm и тут же отсечь от них пользователя?

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

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