Текущий архив: 2003.07.07;
Скачать: CL | DM;
Вниз
QReport - как программно сменить принтер? Найти похожие ветки
← →
lightix (2003-06-24 16:18) [0]Помогите! нужно перед печатью как бы заново переинициализировать установки принтера для QReport, иначе если после запуска программы принтер был удален, то после Qreport1.PrinterSetup; вылетает ошибка типа "нет принтера установленного по умолчанию".
Пробовал менять настройки с помощью PrintDialog - но он почему-то не меняет эти настройки :(((
ПОМОГИТЕ!!!!!!!!
← →
clickmaker (2003-06-24 16:27) [1]QuickRep1.PrinterSettings.PrinterIndex := Index;
где Index - индекс одного из принтеров в глобальной переменной Printers
← →
lightix (2003-06-24 16:32) [2]А можно ему 0 задать или Null?
Как обработать нажатие кнопки при QuickRep1.PrinterSetup
т.е. я хочу знать нажали ОК или Cancel?
← →
clickmaker (2003-06-24 16:39) [3]Можно задать ему -1, что в принципе должно означать отсутствие принтера
← →
lightix (2003-06-24 16:42) [4]А с кнопкой что? Как узнать что пользователь нажал - Да или Отмену?
← →
clickmaker (2003-06-24 16:59) [5]Есть недокументированная фича: если после вызова QuickRep.Tag становится 1, значит - Отмена, если 0 - ОК.
Но я бы на это особенно не полагался, поскольку, кто их знает этих ребят из QuSoft...
← →
lightix (2003-06-24 17:04) [6]А как прикрутить сюда TPrinterSetupDialog ? Чтобы он параметры установил. Его и обрабатывать просто ;)
← →
clickmaker (2003-06-24 17:21) [7]Что-нить типа того:
if TPrinterSetupDialog.Execute then begin
QuickRep.PrinterSettings.Copies := Printer.Copies;
...
end;
← →
lightix (2003-06-24 17:37) [8]Почему-то QuickRep1.PrinterSettings.PrinterIndex := -1 не работает :(((
может его еще надо как-то переинициализировать?
Текст вот такой
PrintNaprForm->QuickRep1->PrinterSettings->PrinterIndex=-1;
PrintNaprForm->QuickRep1->PrinterSetup();
if(PrintNaprForm->QuickRep1->Tag==0)
PrintNaprForm->QuickRep1->Print();
и опять те же грабли :(( что я не так делаю???
← →
lightix (2003-06-24 17:57) [9]Поставил
PrintNaprForm->QuickRep1->PrinterSettings->PrinterIndex=0;
- как раз то что надо - всегда устанавливается принтер по умолчанию :)
СПАСИБО ОГРОМНОЕ!
← →
lightix (2003-06-24 18:22) [10]Блин, рано радовался :((( Всеравно он хотьи в списке светит принтер который указываешь, а ошибку выдает :((
Как его еще можно проинициализировать , ну как при запуске программы например?
потому как выходишь из программы, потом запускаешь заново - и все ок .....
← →
lightix (2003-06-24 18:25) [11]Может это даже и не к QReport относится, а вообще к приложению??
проблема в следующем - юзера ходят на сервер приложений под одним пользователем. при входе автоматически подключаются принтеры пользователя и устанавливается по умолчанию.
если пользователь запустил программу, и после этого зашел еще один пользователь - то по умолчанию устанавливается принтер 2-го пользователя, а у 1-го программа "думает" что по умолчанию стоит его родной принтер. Вот и не печатает ..
как бы юзера друг друга не дают печатать :((
← →
lightix (2003-06-24 18:30) [12]нужно что то типа TPrinter.Refresh или что то в этом духе для всего приложения и для репорта...
ПОМОГИТЕЕ
← →
Aleksandr (2003-06-25 11:03) [13]В свое время я писал разработчикам по этому (и истчо по нескольким багам) поводу, на что мне ответили, что это неисправимая вещь.
Страницы: 1 вся ветка
Текущий архив: 2003.07.07;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.01 c