Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2010, 12:32   #11
brorhail
Новичок
Джуниор
 
Регистрация: 12.05.2010
Сообщений: 2
По умолчанию

Цитата:
Сообщение от mihali4 Посмотреть сообщение
Зачем создавать браузер?
Проще загрузить файл в мемо или стринглист...
размер файла не смущает? если будет 15-20метров сколько ждать будешь?
мало того что он будет в WebBrowser подниматься долго, так потом еще с печатью камасутриться
brorhail вне форума Ответить с цитированием
Старый 10.10.2010, 15:23   #12
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
По умолчанию

Как распечатать WEB страничку при пoмoщи HTML кoнтрoла

Мoжнo испoльзoвать два метoда HTML кoнтрoла: AutoPrint или PrintPage.

Пример использования AutoPrint:
Код:
uses
  Printers;

procedure TForm1.Button1Click(Sender: TObject);
var
  OldCur: TCursor;
begin
  OldCur := Screen.Cursor;

  with Printer do
  begin
    BeginDoc;
    HTML1.AutoPrint(handle);
    Title := HTML1.URL;
    EndDoc;
  end;

  Screen.Cursor := OldCur;
end;
-------

Есть два способа вывода на печать. Первый пример работает в IE 4.x и выше, в то время как второй пример расчитан на IE 3.x:
Код:
 var
   vaIn, vaOut: OleVariant;
 ...
 WebBrowser.ControlInterface.ExecWB(OLECMDID_PRINT,
 OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut);
либо:
Код:
 procedure TForm1.PrintIE;
 var
   CmdTarget : IOleCommandTarget;
   vaIn, vaOut: OleVariant;
 begin
   if WebBrowser1.Document <> nil then
     try
       WebBrowser1.Document.QueryInterface(IOleCommandTarget, CmdTarget);
       if CmdTarget <> nil then
         try
           CmdTarget.Exec( PGuid(nil), OLECMDID_PRINT,
                          OLECMDEXECOPT_DONTPROMPTUSER, vaIn, vaOut);
         finally
           CmdTarget._Release;
         end;
     except
       // nothing
     end;
 end;

Обратите внимание: Если версия Delphi ниже чем 3.02, то необходимо заменить
PGuid(nil) на PGuid(nil)^

Последний раз редактировалось Alter; 10.10.2010 в 15:31.
Alter вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
печать на PDF принтере Frost.sapr Мультимедиа в Delphi 1 12.10.2008 23:17
Обрезка на принтере чеков epson Родион Общие вопросы Delphi 0 07.10.2008 18:53
Печать на матричном принтере Dimon Общие вопросы Delphi 1 11.07.2008 13:20
печать текста в форме пилы OlifK@ Паскаль, Turbo Pascal, PascalABC.NET 3 13.04.2008 15:11
отмена печати на принтере в Delphi Юliana Общие вопросы Delphi 2 29.01.2008 19:51