Kishor-KW Ответов: 0

Opendialog в dephi открывает диалоговое окно за другими всплывающими окнами. Как взять его на фронт


EditParent.OpenDlg.InitialDir := EditParent.FDefaultDir;
 EditParent.OpenDlg.FileName := EditParent.FFileName;

  EditParent.OpenDlg.Execute

Это мой код для открытия диалогового окна файла в delphi. проблема в том, что окно открыто, но оно находится на фоне других окон самого моего приложения. Я новичок в delphi, пожалуйста, помогите, какое свойство я должен использовать. Delphi версия 5

Что я уже пробовал:

<pre> EditParent.OpenDlg.InitialDir := EditParent.FDefaultDir;
  EditParent.OpenDlg.FileName := EditParent.FFileName;

   EditParent.OpenDlg.Execute 


Я использую OpenDialog в Delphi 5. Моя проблема в том, что он открывается в конце моих анкет. Я установил свою анкету наверху, используя следующий код
if UpperCase(SmSession.ApplicationName) = 'MYAPP' then
begin
  Params.ExStyle := Params.ExStyle or WS_EX_TOPMOST;
  exit;
end
, so the windows dialog box might be at the back. How can I take it to front without changing my application forms code ?

Это мой код для openDialog:

EditParent.OpenDlg.InitialDir := EditParent.FDefaultDir;
EditParent.OpenDlg.FileName := EditParent.FFileName;

if EditParent.OpenDlg.Execute then
Begin
  SplitFileDir(EditParent.OpenDlg.FileName, TmpDir, TmpFile);
  if EditParent.ShowOnlyFileName then
    EditParent.FileName := TmpFile
  else
    EditParent.FileName := EditParent.OpenDlg.FileName;
  EditParent.Directory := TmpDir;
  EditParent.SetPeerDirectoryBrowser;
End;
EditParent.OpenDlg.Free;
inherited Click;
end;

Kishor-KW

Пожалуйста, Ответьте.. Если вопрос неуместен, то пожалуйста, спросите.

JonPoley3

Привет,

есть ли у вас другие открытые модальные окна? Или окно установлено так, чтобы оставаться сверху?

Джон

Kishor-KW

да мое окно приложения установлено сверху с помощью следующего кода:

если в верхнем регистре(SmSession.ApplicationName) = 'MYAPP' тогда
начать
Параметры.ExStyle: = Params.ExStyle или WS_EX_TOPMOST;
выход;
конец

Kishor-KW

Setwindowpos И(EditParent.OpenDlg.Handle, HWND_TOPMOST, 0,0,0, 0, SWP_NOZORDER); я пробовал этот вариант, но он не работает

Kishor-KW

Я применил параметры.ExStyle: = Params.ExStyle или WS_EX_TOPMOST; стиль WS_EX_TOPMOST для формирования при создании формы. Я хочу изменить его, после создания установить в фоновом режиме. есть ли для этого какой-нибудь способ? –

0 Ответов