Можно ли как-то обработать щелчок мыши по строчке в отчете?

отредактировано 06:44 Раздел: FastReport 4.0
Привет всем.
Используется Delphi и FastReport
Подскажите пожалуйста, можно ли как-нибудь сделать так, чтобы при щелчке мыши на определенной строке в отчете, открылась к примеру некая форма с именем Form1. Т.е. в конструкторе отчета я посмотрел что у компонента Memo есть свойство OnPreviewDblClick, но как с ним работать не совсем разобрался. Может кто-нибудь подскажет?
Заранее спасибо.

Комментарии

  • отредактировано 06:44
    Здравствуйте,
    Посмотрите отчет "Interactive report" (13.fr3) из Main Demo.
    Он демонстрирует, как по щелку мыши можно вызвать диалог и сделать изменения в самом объекте.
  • отредактировано 06:44
    Там показано как выдать сообщение, а мне надо показать какую либо форму Делфи. Т.е. я не могу этого сделать из кода ФастРепорта. Как это сделать?
  • PNPPNP
    отредактировано 06:44
    Vit@L написал: »
    Там показано как выдать сообщение, а мне надо показать какую либо форму Делфи. Т.е. я не могу этого сделать из кода ФастРепорта. Как это сделать?
    Зарегистрировать собственную функцию в отчете и в
    procedure Memo1OnPreviewDblClick(Sender: TfrxView; Button: TMouseButton; Shift: Integer; var Modified: Boolean);
    begin
      MyFunction();    
    end;
    
  • отредактировано 06:44
    PNP написал: »
    Зарегистрировать собственную функцию в отчете и в

    Так же можно передать форму непосредственно в скрипт :
      frxReport.Script.AddForm(MyForm);
    frxReport.ShowReport();
    

    и в событии скрипта обращаться к форме по имени(св-во Name).
  • отредактировано April 2010
    Да блин. Ну покажите пожалуйста код целиком на конкретном пример. Я не могу разобраться, куда эту форму добавить, в какой скрипт, откуда ее вызвать, как зарегистрировать функцию в отчете?????????????????
    Куда мне вообще вот это вот впихнуть:
    написал:
    frxReport.Script.AddForm(MyForm);
    frxReport.ShowReport();
  • gpigpi
    отредактировано 06:44
    В Delphi:
    frxReport1.Script.AddForm(Form2);
    frxReport1.ShowReport();
    
    в скрипте отчёта:
    procedure Memo1OnPreviewClick(Sender: TfrxView; Button: TMouseButton; Shift: Integer; var Modified: Boolean);
    begin
         Form2.Show;                      
    end;
    
  • отредактировано April 2010
    gpi Спасибо огромное. Теперь все понятно :)
    Только остался еще один вопрос. К компонентам, которые лежат на этой форме можно сразу обращаться после добавления формы или их тоже нужно добавлять?

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

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