Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.01.06;
Скачать: CL | DM;

Вниз

WebBrowser1.ExecWB(OLECMDID_PRINTPREVIEW, 0) в свернутом виде?!   Найти похожие ветки 

 
brestmarket   (2002-11-06 14:25) [0]

Почему окно с предпросмотром при вызове WebBrowser1.ExecWB(OLECMDID_PRINTPREVIEW, 0);
запускается в свернутом (не в панель задач) а до минимальных размеров на экране? Как его развернуть на полный экран по умолчанию?


 
brestmarket   (2002-11-06 18:31) [1]

Прошу помочь. Беда приключилась по непонятной причине, хотя раньше этот код работал безукоризненно.


 
int64 ©   (2002-11-06 19:20) [2]

Это окно, по умолчанию, всегда имеет размер как у формы, вызвавшего это окно приложения.

А если нужно во весь экран, в чём проблема? Бери хендл этого окна, да и растягивай, как тебе надо.


 
brestmarket   (2002-11-07 02:44) [3]

Хорошо. Все что я делаю - вызываю WebBrowser1.ExecWB(OLECMDID_PRINTPREVIEW, 0);
На что здесь handle - если можно пример, - но я думаю, что эту задачу можно решить не просто растягиванием. Вопрос по прежнему актуален!


 
int64 ©   (2002-11-07 14:18) [4]

WebBrowser1.ExecWB(OLECMDID_PRINTPREVIEW, 0);
Wnd := FindWindow(nil, "Предварительный просмотр");
PostMessage(Wnd, WM_SYSCOMMAND, SC_MAXIMIZE,0);


А если хочешь, чтоб без этих строк - делай форму (на которой WebBrowser1) во весь экран.


 
brestmarket   (2002-11-07 23:00) [5]

Предложенный вариант тобой, конечно сработает, но наверняка, можно как-то более грамотно, чем просто поиск по заголовку окна.


 
int64 ©   (2002-11-08 00:55) [6]

Ну вот, "более грамотно":

...
private
PrintPreview: boolean;
FOldWindowProc: TWndMethod;
procedure FormWndProc(var AMsg: TMessage);
...

procedure TForm1.FormCreate(Sender: TObject);
begin
FOldWindowProc:= WindowProc;
WindowProc := FormWndProc;
end;

procedure TForm1.FormWndProc(var AMsg: TMessage);
var
wnd: Integer;
Msg: TWmActivate;
begin
if AMsg.Msg = WM_ACTIVATE then
begin
Msg := TWmActivate(AMsg);
wnd := Msg.ActiveWindow;
if PrintPreview then
begin
//здесь упрявляем popup окном
MoveWindow(wnd, 0, 0, Screen.Width, Screen.Height, true);
PrintPreview := false;
end;
end;
FOldWindowProc(AMsg);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
PrintPreview := true;
WebBrowser1.ExecWB(OLECMDID_PRINTPREVIEW, 0);
end;


Это пример, как управлять Popup Windows.
Логика та же: ловим-растягиваем.



Страницы: 1 вся ветка

Текущий архив: 2003.01.06;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.017 c
1-15101
reticon
2002-12-20 13:20
2003.01.06
сравнение двух нетипизированных файлов


14-15216
vopros
2002-12-18 11:04
2003.01.06
При отладке программ перестало показывать значение


1-15021
izhalex
2002-12-24 14:59
2003.01.06
курсор в Memo


1-15150
roman_tutov
2002-12-21 14:30
2003.01.06
Где узнать код символа,


1-14984
Le!
2002-12-24 06:51
2003.01.06
Помогите с простенькой проблемкой!