在我的应用程序中有多个表单时,我得到相同数量的项目
在我的 Windows菜单栏中为一个应用程序(见截图).
在常规VCL应用程序中,只有一个项标识应用程序
(所以我的截图只包含’Form2’项目).
有谁知道如何实现与VCL应用程序相同的行为,
所以我的多表格应用程序只有一个项目???
提前致谢!
泰斯
编辑:我设法显示第二个表单,底部菜单只有一个项目,但表单的属性’Transparency’必须是真的!因此,为了使第二种形式可见,需要将TRectangle放置在第二种形式中(没有带有标题和按钮的框架可见)…
解决方法 我找到了解决方法.当您使用所有者创建表单时,FireMonkey应该将所有者传递给windows CreateWindowEx函数,但它不会.
在单元FMX.Platform.Win中,在CreateWindow()函数中,更改:
Wnd := CreateWindowEx(ExStyle,WindowClass.lpszClassname,PChar(AForm.Caption),Style,Integer(CW_USEDEFAulT),GetDesktopWindow,hInstance,nil);
对此:
// If there's an owner,and it's a form,then create the window as a child if (AForm <> nil) and (AForm.Owner <> nil) and (AForm.Owner is TForm) then begin // Child window Wnd := CreateWindowEx(ExStyle,HandletoHWND(TForm(AForm.Owner).Handle),nil); end else begin // Desktop window Wnd := CreateWindowEx(ExStyle,nil); end;
因此,如果您要创建子项,尤其是模态表单,请确保在创建父表单时将其指定为所有者,如下所示:
MyModalForm := TMyModalForm.Create(MyParentForm);MyModalForm.ShowModal;
然后,在修复之后,一切都将按预期工作.
不要忘记从项目设置中的自动创建表单列表中删除子表单.
总结以上是内存溢出为你收集整理的Firemonkey的多个表单在Windows菜单中显示多个项目全部内容,希望文章能够帮你解决Firemonkey的多个表单在Windows菜单中显示多个项目所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)