Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 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
1-77476
kull
2002-06-10 14:53
2002.06.24
Delphi 6 портит текст?


3-77272
Катерина
2002-05-29 14:20
2002.06.24
Считывание dBase таблиц


1-77408
z_z
2002-06-10 22:32
2002.06.24
Форма


4-77671
AFROLOV
2002-04-25 17:24
2002.06.24
А можно ли без хуков перехватывать нажатие клавиш для своей проги


4-77674
слон
2002-04-24 14:52
2002.06.24
Как определить зависла ли чужая программа?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский