有2个窗体,form1,form2,点击form2上一个按钮触发一个colordialog,可是被form1挡在后面,该怎么让colordialog到前端来显示?

解决方案 »

  1.   

    如果是DELPHI7就这样:
    Windows.SetParent(colordialog.Handle, form2.Handle);
    如果是Delphi 10的话
    colordialog.Execute(form2.Handle);
    至于Form1、Form2的前后端自己处理。Delphi如果没有为一个窗体指定父窗体,默认的是Application的隐形窗体,所以导致有时ShowModal窗体,会在某个窗体后面。楼主记得结贴。
      

  2.   

    有Delphi 10这个版本,今天才知道,惭愧
      

  3.   

    form2设置了居于最上层的属性吗? 如果有 改下