添加新的 MDI 子窗口时如何避免屏幕弹跳

2023-12-03

在我的 MDI 框架中,我正在创建 MDI 子窗口,如下所示:

Form frm = new frmMyChild();
frm.MdiParent = this;
frm.WindowState = FormWindowState.Maximized;
frm.Show();
frm.Focus();

到目前为止,效果很好,但屏幕很快就会“弹跳”,因为子窗口被置于“正常”状态,然后它们再次最大化。如何防止这种情况发生?


即使将 MenuStrip 添加到 MDI 父窗体中,窗体.MainMenuStrip还是null.
当这个属性是null,MDI 子级的系统菜单控件不是blended使用 MenuStrip(或旧的MainMenu),因此子窗体标题栏仍然可见并位于 MenuStrip 上方。
当创建新的子窗体并将其最大化时,MenuStripbounces重新创建子表单标题时向上和向下。

设置MainMenuStrip属性到 MDI 父级的 MenuStrip 实例,将导致 MDI 子级的系统菜单控件blend使用 MenuStrip(或MainMenu).

很有趣的是在.Net 源代码随着时间的推移,这种行为和设计已经改变了多少次(这只是那里的评论:)。

TheMDIMenuStrip是 MDI 父级的 MenuStrip 在设计时创建并在InitializeComponent().

public partial class MDIParent : Form
{
    public MDIParent()
    {
        InitializeComponent();
        MainMenuStrip = TheMDIMenuStrip;
        TheMDIMenuStrip.SendToBack();
    }
    ...
}

Before:

MDI MenuStrip Maximize before

After:

MDI MenuStrip Maximize after

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

添加新的 MDI 子窗口时如何避免屏幕弹跳 的相关文章

  • 需要将现有模型(非内联)添加到 .Net core API 中的 Swagger 架构中

    我正在为基于 Net core 6 的 API 生成 Swagger 文档 我有一些错误模型将由我的网关返回 这些不会在我的任何 API 端点中使用 返回 我想将这些模型添加到 Swagger 文档架构集合中 如果我遵循内联方式 我就能够成
  • Visual Studio 2013 Intellisense 不会将枚举类型放在方法参数的位置

    例如 我有以下代码 namespace VS2013 EnumTypes class Program enum SomeEnum One Two static void SomeMethod SomeEnum someEnum some c
  • 用C#发送USSD?

    我想编写一个在 Windows Mobile 6 上运行的简单 C 应用程序 它可以发送 USSD 消息 有没有任何图书馆可以帮助我做到这一点 或者是否有任何示例解释如何使用线路发送USSD http msdn microsoft com
  • C++ 为非虚方法指定初始化

    我有 a h 如下所示 class A public void doSomething 0 然后我有 b h 如下所示 include a h class b public A public void doSomething 我只是想通过尝
  • 如何设置cookie值?

    我正在执行以下操作来设置 cookie 值 HttpCookie mycookie new HttpCookie mycookie mycookie Value value1 Case sensitivity mycookie Expire
  • 尝试缓冲区溢出

    我正在尝试使用缓冲区溢出来更改函数的结果 以使用以下代码更改堆栈上的结果 include
  • C语言中的array、&array、&array[0]有什么区别? [复制]

    这个问题在这里已经有答案了 在学习C语言中的数组和指针时 我很困惑 为什么ch ch ch 0 彼此相等 而sptr sptr sptr 0 却不相等 这是我的源代码 int main void char ch 7 1 2 3 4 5 6
  • 阻止用户取消选择列表框中的项目?

    我有一个列表框 里面有很多项目 用户可以单击某个项目来编辑其内容 如何防止用户取消选择所有项目 即 用户不应该无法选择任何内容 您的情况缺少一个案例 即清除列表后 您将选择列表中不再存在的项目 我通过添加额外的检查来解决这个问题 var l
  • 向窗口句柄发送消息

    我尝试使用 sendmessage 将消息从我的 C 应用程序传递到 C 我的c 代码是这样的 int tmain int argc TCHAR argv COPYDATASTRUCT cpd cpd dwData 0 LPCWSTR st
  • 如何在 C# 中停止程序进一步执行

    string FirstName Console ReadLine if FirstName Length gt 12 Console WriteLine if FirstName Length lt 3 Console WriteLine
  • 从 TFS 下载工作项附件(文件已损坏)

    我正在尝试创建 C 代码 因此我可以自动从 Team Foundation Server 下载 BUGS 预定义查询的所有附件 该代码似乎工作得很好 但所有下载的文件都因意外原因而损坏 我无法查看它们 有人可以看一下代码并分享意见吗 非常感
  • 为什么 C++ 元组如此奇怪?

    我通常创建自定义structs将不同类型的值分组在一起时 这通常很好 而且我个人发现命名成员访问更容易阅读 但我想创建一个更通用的 API 在其他语言中广泛使用元组后 我想返回类型的值std tuple但发现它们在 C 中使用比在其他语言中
  • 将数组显式衰减为指针

    最简洁 最惯用的方式是什么明确地将数组衰减为指针 例如 考虑您需要能够指导 SFINAE 或明确过载的情况 template
  • 我的 Opencv 应用程序处理速度非常慢

    我正在构建一个 OpenCV 应用程序 它从相机捕获视频 并在删除背景后将其覆盖在另一个视频上 我无法达到合理的速度 因为它以大约 1 fps 的速度播放输出 而我的背景去除以 3 fps 的速度工作 有没有办法以正常速度显示背景视频并以
  • 将纬度/经度转换为 X/Y,以便在美国地图图像上进行阿尔伯斯投影

    我正在尝试使用 C 或 Javascript 将纬度 经度转换为 X Y 坐标 以将带有 CSS 的 div 左 上 定位到美国地图的背景图像上 美国的标准地图投影是阿尔伯斯投影 如下所示 但 StackOverflow 仅提供参考基本墨卡
  • 使用可变参数模板函数计算多个值的平均值

    我正在尝试编写一个函数来确定任意数量参数的平均值 所有参数都具有相同的类型 出于学习目的 我尝试使用可变参数模板函数来做到这一点 这是我到目前为止所拥有的 template
  • 将 .NET 类库(主要定义 CRUD 操作)公开为服务

    公开现有内容的最佳 有效和最快的方法是什么 类 图书馆 主要定义 CRUD 操作 作为service 周转基金服务 or WCF数据服务 以便它可以与银光 or Ajax 在那儿tools 代码生成器 RAD 工具 哪些可以支持这个 预先感
  • 在运行时将项目添加到 ToolStrip

    您好 我有一个带有 收藏夹 菜单的 ToolStripMenu 我想在运行时在 WinForms 应用程序中添加子项目 我有一个 datagridview 右键单击它会显示一个包含 添加到收藏夹 选项的上下文菜单 当该事件被触发时 我想使用
  • 在 Visual Studio C++ 资源编辑器中导入 png 文件

    我希望能够在 Visual Studio 资源编辑器中导入 png 文件 以便能够在不同的其他项目中使用嵌入的资源 有解决办法吗 我知道它适用于位图 但我对 png 感兴趣 因为即使在较低格式 16x16 或 32x32 上也可以使用 透明
  • 如何使用 __m128i 执行元素左移?

    我发现 SSE 移位指令只能在所有元素上移位相同的量 mm sll epi32 mm slli epi32 这些会移动所有元素 但移动量相同 http software intel com sites products documentat

随机推荐

  • TensorFlow Custom Estimator 预测投掷值误差

    注意 这个问题有一个附带的 记录的Colab笔记本 有时 TensorFlow 的文档还有很多不足之处 一些针对较低级别 api 的旧文档似乎已被删除 而大多数较新的文档都指向使用较高级别的 api 例如 TensorFlow 的子集ker
  • 为什么插入到复制数据帧的新列也会添加到原始数据帧? [复制]

    这个问题在这里已经有答案了 您能否告诉我为什么要开设新专栏c添加到原始数据框 即df old df old pd DataFrame a 1 2 b 3 4 df new df old df new c 5 6 print Old prin
  • 如何按类别、值和选中对复选框进行排序

    我有一个div subfilterNamesContainer 其中包含复选框列表 我正在尝试编写一个函数 将复选框分为 3 个部分 复选框与class default 应该位于按值排序的顶部 无论是否选中 然后我需要列出不是的复选框cla
  • 如何从 appsettings.json 获取值

    public class Bar public static readonly string Foo ConfigurationManager AppSettings Foo 在 NET Framework 4 x 中 我可以使用Confi
  • 如何使用 C++11 枚举类作为标志

    假设我有一堂课 enum class Flags char FLAG 1 1 FLAG 2 2 FLAG 3 4 FLAG 4 8 现在我可以有一个具有类型标志的变量并分配一个值吗7例如 我可以这样做吗 Flags f Flags FLAG
  • AJAX 呼叫在 Phonegap 中无法工作,但工作正常

    我正在使用开放天气地图 api web 服务进行 ajax 调用 以便使用纬度和经度获取当前天气 问题是相同的调用在我的正常 php 文件夹中工作 但在我的 phongap 应用程序中不起作用 我的ajax调用如下图 ajax type G
  • Hibernate 限制中“等于 id”限制的大小写敏感

    我尝试做一个区分大小写的等于username与 Hibernate 3 6 9 一起使用 但似乎限制不区分大小写 例如 AdMin 或 admin 都有效 但只有 admin 应该正确 否则 size 应该返回 0 我会尽量避免使用like
  • 使类可编码

    我有一个协议 即 Codable 和一个类 即 Codable public protocol SourceListItem AnyObject Codable var name String get set var children So
  • 如何将事件侦听器添加到 HTML5 视频海报图像加载事件

    是否可以 我想将一个事件侦听器附加到 HTML5 视频元素上的海报图像 以便在加载并显示海报图像后运行代码 我正在尝试找出一种方法来做到这一点 但我需要帮助 像这样 var poster video prop poster if poste
  • 将现有 EC2 实例导出到 CloudFormation json/yaml

    Problem 我有一个EC2实例正在运行 我对实例做了一些修改 安装了 docker 设置证书目录等 现在 我想创建相同的实例 但使用基础设施作为代码主体 我没有记住我所做的所有添加并手动创建模板 而是尝试找到一种方法将当前的 EC2 实
  • 检查数据库是否存在并在 SQLite IOS 中删除数据库

    我目前正在使用phonegap 来创建ios 应用程序 在熟悉 sql javascript 交互的同时 我似乎已经创建了同名数据库文件的 10 个版本 我目前正在使用以下创建代码 来自phonegap wiki var mydb fals
  • Promise 回调按什么顺序触发?

    假设以下语句已按此顺序执行 promiseA then function console log A1 promiseB then function console log B promiseA then function console
  • 获取BehaviorSubject的值

    我正在尝试获取BehaviorSubject 的值 返回值 但我如何利用它们在 return true false 语句中使用它们 BehaviorSubject isScalar false observers Array 0 close
  • 在 php 中运行多个查询

    我对 PHP 和 HTML 真的很陌生 按提交按钮后 我尝试使用 Users MySQL 表中已有的数据填充字段 这有效 我还想将通过 SELECT 获得的相同数据插入到另一个名为 scan 的 SQL 表中
  • 为什么 HTML 中 标签没有关闭?

    出于好奇 为什么 img gt 标签未关闭于HTML img src smiley gif alt Smiley face height 42 width 42 我还注意到 img gt 标签明确地封闭在XHTML img src smil
  • 如何正确解析算术表达式中的数字,区分正数和负数?

    我在数据结构类中有一个作业 其中我必须编写一个计算器 用 4 个基本运算和括号来求解算术表达式 输入是通过 stdin 缓冲区完成的 输出也是如此 一开始很简单 老师给我们提供了算法 如何将表达式从中缀转换为后缀以及如何对其求值 唯一的目标
  • 如何在 J.T.Sage DateBox 中禁用已选择的下一个日期框的日期

    我的应用程序使用 jt sage DateBox 我想禁用已选择的下一个日期框字段的日期选择器例如 我的 Date1 就像 2014 年 8 月 13 日 我的其他日期框字段需要在 2014 年 8 月 13 日之后选择 注意 取决于之前的
  • 使用 BeautifulSoup 查找包含特定文本的 HTML 标签

    我正在尝试获取 HTML 文档中包含以下文本模式的元素 S 11 h2 this is cool 12345678901 h2 因此 前面的内容将通过使用以下方式进行匹配 soup h2 text re compile r S 11 结果会
  • Dictionary.cs 中的 FindEntry 函数

    我一直在研究 NET 字典的实现 因为我想了解是什么使字典 ContainsKey 和查找速度更快 http referencesource microsoft com mscorlib system collections generic
  • 添加新的 MDI 子窗口时如何避免屏幕弹跳

    在我的 MDI 框架中 我正在创建 MDI 子窗口 如下所示 Form frm new frmMyChild frm MdiParent this frm WindowState FormWindowState Maximized frm