Форум: "WinAPI";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];
ВнизПрограмное закрытие модального окна (диалог) Найти похожие ветки
← →
Александр В. (2004-10-20 15:55) [0]Здравствуйте!
Помогите решить такую проблему:
На принт диалог добавляю свою кнопку "Просмотр".
Необходимо чтобы при нажатии на неё принт диалог
реагировал так же как и на нажатие (его) кнопки "ОК".
Пробовал
SendMessage(PD.HWND,WM_Char,Ord(#13),0);
не помогает.
Заранее благодарен.
← →
-=SS=- © (2004-10-20 16:47) [1]В чём собственно проблема пподробней монжо ?
← →
Александр В. (2004-10-20 17:44) [2]Необходимо на PrintDialog поместить свою кнопку
при нажатии на которую диалог закрывается, а контрол
TPrintDialog возвращал установленные пользователем
режимы, PrintRange и пр..
Как это сделал я:
кнопка "Просмотр" лежит на панели, которую собственно и
кидаем на PrintDialog, иначе, если кидать только батон,
то он отказывается обрабатывать события. Такая практика
почерапана из Dialogs.pas.
//Old_Wnd:THandle - переменная модуля
{ В обработчике события OnShow PrintDialog
кидаем панель с батоном на диалог
}
procedure TForm1.PDShow(Sender: TObject);
var
r:Trect;
begin
Old_Wnd:=Windows.SetParent(pnl_btn.Handle,PD.Handle);
Windows.GetClientRect(PD.Handle,r);
pnl_btn.Left:=13;pnl_btn.Top:=r.Bottom-pnl_btn.Height-12;
pnl_btn.Visible:=True;
end;
//а в обработчике события OnClose возвращаем на родину.
procedure TfRepMan.PDClose(Sender: TObject);
begin
pnl_btn.Visible:=False;
Windows.SetParent(pnl_btn.Handle,Self.Handle);
end;
//Так вот. В обработчике OnClick батона необходимо
procedure TfRepMan.Button1Click(Sender: TObject);
begin
{закрыть диалог и получить установленные пользоваетелм
настройки, PrintRange и пр.. Вся проблема в том, что
каким бы методом я ни пробовал закрывать эффект как от нажатия
клавиши "Отмена" или Esc. Может я чего не так делаю.
}
// Пробовал так:
keybd_event(VK_RETURN,0,0,0);
keybd_event(VK_RETURN,0,KEYEVENTF_KEYUP,0);
// и так
SendMessage(Self.Handle,WM_CHAR,Word(#13),0);
//SendMessage(PD.Handle,WM_CLOSE,0,0);
end;
Страницы: 1 вся ветка
Форум: "WinAPI";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.043 c