Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Сети";
Текущий архив: 2003.01.06;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.006 c
1-15140
Shc
2002-12-17 20:29
2003.01.06
RTF


8-15178
pnp
2002-09-17 15:51
2003.01.06
Осциллограф


6-15187
brestmarket
2002-11-06 14:25
2003.01.06
WebBrowser1.ExecWB(OLECMDID_PRINTPREVIEW, 0) в свернутом виде?!


14-15297
OZZY OSBOURNE
2002-12-17 23:01
2003.01.06
Ищу Леля.


1-15066
Юра
2002-12-25 11:09
2003.01.06
Application.ProcessMessages





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский