Форум: "Основная";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
ВнизПечать fsMDIChild Найти похожие ветки
← →
PTE (2002-06-10 12:23) [0]Есть форма fsMDIChild, таких форм может быть открыто несколько, как дать понять, что нужно печатать именно ту форму fsMDIChild, которая сейчас активна если кнопка печати для всех одно в меню? Печатаю через QReport
← →
Black Cat (2002-06-10 13:29) [1]Используя ActiveMDIChild
← →
PTE (2002-06-10 13:29) [2]Когда у меня была одна форма все было просто
Form2.QReport1.Print
Как же теперь понять что отправить на печать, а что нет
← →
PTE (2002-06-10 14:38) [3]ну да делаю ActiveMDIChild.Print; но как он поймет какой из форм ему печатать? у меня формы печати и просмотра на других формах с QReport
← →
hooky-mars (2002-06-10 14:44) [4]
> ActiveMDIChild
Через неё не доберёшся до ком
← →
PTE (2002-06-10 14:49) [5]так как правильно то?
← →
Black Cat (2002-06-10 14:51) [6]if (ActiveMDIChild <> Nil) and (ActiveMDIChild is TForm2) then
TForm2(ActiveMDIChild).QReport1.Print;
← →
PTE (2002-06-10 16:07) [7]что-то не работает, пытаюсь просмотр делать
procedure TForm1.N20Click(Sender: TObject);
begin
if (ActiveMDIChild <> Nil) and
(ActiveMDIChild is TForm3) then
TForm3(ActiveMDIChild).QuickRep1.Preview;
if (ActiveMDIChild <> Nil) and
(ActiveMDIChild is TForm5) then
TForm5(ActiveMDIChild).QuickRep1.Preview;
end;
нет нифига ничего ни ошибок ни каких движений
← →
Black Cat (2002-06-10 16:26) [8]Form1 должна быть fsMDIForm, иначе ActiveMDIChild=nil
← →
PTE (2002-06-10 16:45) [9]да так и есть Form1 fsMDIForm, а остальные чилд
← →
PTE (2002-06-10 17:14) [10]так может кто подскажет в чем не прав я?
← →
PTE (2002-06-10 19:08) [11]Попробую ещё раз, почему не печатается или при Preview не просматравается документ
procedure TForm1.N7Click(Sender: TObject);
begin
if (ActiveMDIChild <> Nil) and
(ActiveMDIChild is TForm3) then
TForm3(ActiveMDIChild).QuickRep1.Print;
if (ActiveMDIChild <> Nil) and
(ActiveMDIChild is TForm5) then
TForm5(ActiveMDIChild).QuickRep1.Print;
end;
← →
PTE (2002-06-10 19:17) [12]попробывал сделать так кинул на родительскую форму кнопку в обработке написал
if Application.FindComponent("Form3") <> nil then
Form3.Show
else
Form3 := TForm3.Create(Application);
Form3.QuickRep1.Preview;
но почему не срабатывает при вызове из системного меню MainMenu
← →
hooky-mars (2002-06-10 19:40) [13]ActiveMDIChild до компанентов не домерёщся. Моно попробовать через Api, но незнаю как с принтом.
← →
PTE (2002-06-10 19:52) [14]ну а как же другие делают? я такие программ сколько угодно видел. MDI приложение и распечатывается та форма печати, которая соответствует активной форме. Неужели никто не делал?
← →
hooky-mars (2002-06-10 20:35) [15]
> PTE © (10.06.02 19:52)
А ты пробовал сливать менюшки или заменять актионлисты? Я то же пытаюсь решить эту проблуму. Но пока я её решил только при помощи API
← →
PTE (2002-06-10 21:00) [16]
нет у меня ничего не получается, а ко всему прочему рядом с моей родной серверной красят окна и двери и я сижу, начинаю отчаиватся и просто курю и тупо смотрю в монитор.
мне пора в отпуск
← →
hooky-mars (2002-06-10 21:03) [17]
> PTE © (10.06.02 21:00)
> нет у меня ничего не получается, а ко всему прочему рядом
> с моей родной серверной красят окна и двери и я сижу, начинаю
> отчаиватся и просто курю и тупо смотрю в монитор.
> мне пора в отпуск
Вообще-то это не ответ.
← →
Black Cat (2002-06-11 11:02) [18]
> PTE © (10.06.02 19:52)
> ну а как же другие делают? я такие программ сколько угодно
> видел. MDI приложение и распечатывается та форма печати,
> которая соответствует активной форме. Неужели никто не делал?
В том то и дело, что делал (только без qReporta), все работает. Если вопрос в силе, давай попробуем разобраться.
← →
kaif (2002-06-11 11:16) [19]Если формы разных классов, но отчет везде называется QuickRep1 то
var
c: TComponent;
begin
c := ActiveMDIChild.FindComponent("QuickRep1")
if c <> nil then
with c as TQuickRep do Print;
end;
Если все формы - экземпляры или потомки некоей формы TMyForm, содержащей QuickRep1, то еще проще:
TMyForm(ActiveMDIChild).QuickRep1.Print;
← →
hooky-mars (2002-06-11 13:52) [20]А что делать, если активную MDIChild MainForm`ы ищет поток? В таком случае TMyForm(ActiveMDIChild).QuickRep1.Print; не нашет. Непашет и MainForm.TMyForm(ActiveMDIChild).QuickRep1.Print;
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2002.06.24;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.008 c