将一个表单放置在其所有者表单的顶部

发布于 2024-10-15 22:00:09 字数 313 浏览 6 评论 0原文

我有一个 mdiform,这是我的主要申请表。我正在尝试实现以下内容:

当用户想要创建新的“产品”时,会创建一个新表单(不是子表单,只是一个类似向导的表单),用户在其中输入所有需要的信息。一旦用户单击下一步,我想使用我创建的另一个名为弹出窗口的表单来“隐藏”MDI 表单。我的问题是,当我尝试将子(弹出)表单放置在 MDI 表单顶部时,它总是会偏移(我使用 Mdi.Location 来设置我的弹出位置表单)稍微靠近顶部并到达左边。

我尝试了 PointToScreen 和 PointToClient,但没有一个产生解决方案。有人知道我在这里做错了什么吗?

谢谢

i have an mdiform which is my main application form. and i'm trying to implement the following:

when the user want to create a new "product", a new form is created (which is not a child form, just a wizard like form) where the user enter all the needed information. once the user click next i would like to "shadow" the mdi form with another form that i created called popup. my problem, when i'm trying to position the child (popup) form on top of the mdi form, it always get offset (i'm using the Mdi.Location to set my popup location form) a little to the top and to the left.

i tried PointToScreen and PointToClient, but none produced a solution. does anyone has any idea what am i doing wrong here?

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

百善笑为先 2024-10-22 22:00:09

不太确定可能是什么问题。您必须负责表单的 StartPosition 属性。默认值是“WindowsDefaultLocation”,这很容易将其放在您不特别喜欢的地方。将其更改为“手动”,在调用 Show() 之前设置 Location 属性。是的,这些是屏幕坐标,没有任何关系。

Not quite sure what the problem might be. You'll have to take charge of the StartPosition property of the form. The default is "WindowsDefaultLocation" which is very apt to put it in a place you don't particularly like. Change it to "Manual", set the Location property before you call Show(). Yes, those are screen coordinates, nothing relative.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文