当我更改控件的左侧位置和宽度时,如何阻止控件抽搐?

2024-03-02

我有一个用户可以用鼠标调整大小的控件。当它们移动到右侧时,我只需更改宽度,一切正常。

但是,当它们移动左侧尺寸时,我必须更改“左侧”和“宽度”属性。控件的右侧明显抽搐,在新位置显示旧宽度。

如果我使用边界同时设置左侧和宽度,它仍然会抽搐;是否将 SetStyle 与 UserPaint、Opaque、OptimizedDoubleBuffer、AllPaintingInWmPaint 或 ResizeRedraw 中的任何一个一起使用;以及是否是双缓冲的。如果我在控件或其父控件上调用 SuspendLayout()/ResumeLayout(),它仍然会抽搐。

当我更改控件的左侧位置和宽度时,如何阻止控件抽搐?


您可能想尝试致电Control.SuspendLayout()在移动/调整大小之前在包含表单上,然后Control.ResumeLayout().

听起来无论您将控件设置为哪种模式,当您更改边界时触发的某些事件都会在设置两个值之前重新绘制它。可能和形式有关系。

EDIT:我看到了这个类似的问题 https://stackoverflow.com/questions/64272/how-to-eliminate-flicker-in-windowsforms-custom-control-when-scrolling关于SO,您提到您已经使用过 SetStyle(),但也许您可以选择一些选项组合来给您带来所需的效果。

希望有帮助!

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

当我更改控件的左侧位置和宽度时,如何阻止控件抽搐? 的相关文章

  • 如何查找boost运行时版本

    我正在编写一个使用 boost 的 C 库 在这个库中 我想包含有关用于编译我的库的二进制版本的 boost 版本的信息 我可以使用宏BOOST VERSION这很好 我还想确定哪个是 boost 的运行时版本 以便我可以与用于编译我的库的
  • 将数组从 C# 编组到 C++ 并返回:PInvokeStackImbalance

    我有一个 C 函数 我想从 C 访问它 问题是我不断收到 PInvokeStackImbalance 异常 但我不知道为什么 当检查异常被关闭时 一切都运行良好并且符合预期 我的 C 函数的签名是 extern C double solve
  • 线程安全的get(访问器方法)

    我目前正在使用以下代码对变量进行线程安全访问 int gnVariable void getVariableValue int pnValue acquireLock Acquires the protection mechanism pn
  • 如何以编程方式确定 C 中 int 数据的最大和最小限制?

    我正在尝试 K R 的练习 2 1 练习内容如下 编写一个程序来确定范围char short int and long变量 两者signed and unsigned 通过从标准标题打印适当的值并通过直接计算 如果计算它们会更困难 确定各种
  • Reflection.Emit 中的短格式操作码错误

    我正在制作一种与以下非常相似的小语言hlsl但仅支持像素着色器 该语言使用reflection emit构建实现相同功能的 NET 程序集 我目前正在测试分支指令的实现if在我的一个单元测试中 一个大的if与内if elses 失败并显示以
  • ApiController 操作无法从查询字符串解析数组

    使用 Visual Studio 2012 2 MVC4 Web 应用程序 我有请求发送到我的 ApiController 如下所示 http localhost api keys ids 1 ids 2 ids 3 我的印象是以下方法应该
  • 在 C++ 中,严格别名规则中的“访问”是什么意思?

    3 10 10 说 如果一个程序试图access通过除以下类型之一之外的泛左值存储对象的值 行为未定义 然而 术语 访问 并没有在任何地方定义 在这种情况下这意味着read or 读取或修改 在 C 标准中 它被明确定义为读取或修改 然而在
  • 用 C++ 解密文件,该文件使用 openssl -aes-128-cbc 加密

    我正在尝试用 C 解密文件 该文件使用以下命令加密 openssl enc nosalt aes 128 cbc pass pass test in test txt out test enc txt p 控制台显示key 098F6BCD
  • c++11 中的 std::thread 问题

    我在尝试从标准模板库编译具有多线程的程序时遇到一些麻烦 当我尝试编译以下程序时 它返回一个晦涩的错误 include
  • 从空白启动时 VSTO 功能区不显示解决方案

    如果我从 文件 新建项目 菜单创建一个新的 Excel 2013 和 2016 VSTO 加载项 项目 然后单击 项目 添加新项目 gt 功能区 可视化设计器 则一切正常 我启动了应用程序 我的功能区显示在 Excel 中 但是 如果我首先
  • 如何使用 Caliburn.Micro MVVM 将焦点设置到控件

    我有一个表单 我想在发生某些用户操作时将焦点设置到文本框 我知道 MVVM 的处理方式是绑定到 VM 属性 但是 TextBox 没有允许这种情况发生的属性 从虚拟机设置焦点的最佳方法是什么 我创建了一个 IResult 实现 可以很好地实
  • 允许 .NET WebApi 忽略 DOCTYPE 声明

    我正在尝试通过 WebApi 方法将 XML 反序列化为对象 我有以下课程 XmlRoot IsNullable false public class MyObject XmlElement Name public string Name
  • 如何带参数调用外部程序?

    我想在我的代码中调用一个 Windows 程序 并使用代码本身确定的参数 我不想调用外部函数或方法 而是调用 WinXP 环境中的实际 exe 或批处理 脚本文件 C 或 C 将是首选语言 但如果使用任何其他语言更容易完成此操作 请告诉我
  • 什么是多重重继承?

    我将以下称为 多重重新继承 直接继承一个类一次 并通过继承其一个或多个后代来间接继承一次或多次 通过继承一个类的两个或多个后代来间接继承一个类两次或多次 我想知道它是否存在以及如何明确访问嵌入的子对象 1 Professional C 2n
  • lambda 表达式是多线程的吗?

    lambda 表达式是多线程的吗 假设当你将数学公式编写为 lambda 方法时 当你将其传递给另一个方法时 它会是多线程的吗 不是100 清楚你问的是什么 您是否想问 lambda 是否自然地在不同的线程上运行 如果是这样 则它们只是 S
  • jquery ajax“发布”调用

    我是 jQuery 和 Ajax 的新手 并且在 发布 方面遇到问题 我正在使用 jQuery Ajax post 调用将数据保存到数据库 当我尝试保存数据时 它将 null 传递给我的 C 方法 jQuery 看起来像这样 functio
  • 为什么C#不支持多重继承? [复制]

    这个问题在这里已经有答案了 可能的重复 C 应该包含多重继承吗 https stackoverflow com questions 191691 should c include multiple inheritance 为什么C 不支持多
  • 组合框由于某种原因被链接

    我有以下代码来填充 3 个组合框 private void PopulateDDLs SqlConnection connection SqlCommand command SqlDataReader reader DataTable dt
  • 如何在Asp.Net Core中自定义开发者异常页面?

    这常见于ConfigureStartup cs 文件的方法具有如下所示的代码 if env IsDevelopment app UseDeveloperExceptionPage new DeveloperExceptionPageOpti
  • C++20 范围太多 |运营商?

    我在这段代码中使用 g 10 2 有谁知道为什么我最后收到编译器错误std views reverse on results3 include

随机推荐

  • 拦截html按钮点击

    当用户点击 html 按钮时是否有可能拦截 我有一个 webviewclient 它加载带有两个按钮的登录页面 允许和拒绝 我希望您在按下拒绝按钮时进行拦截 拒绝和允许具有相同的 basUrl 和 js 执行正确的重定向 提前致谢 您可能不
  • 在 javascript 中的对象数组中搜索深度嵌套的值

    我基本上试图实现对任何给定值的搜索应该在对象键值数组中查找 也可以是嵌套对象 这是一个例子 下面的函数将采用一个对象和一个查询来搜索数组对象键值 因此 如果找到匹配项 它应该从该数组中进行过滤 function searchObj obj
  • 如何用圆圈替换光标,而不是在 p5.js 中将其绘制到画布上?

    问题 我正在尝试使用 p5 js 创建一个简单的绘图应用程序 我想在光标位置显示一个代表画笔大小的圆圈 而不是标准光标图像 可能的解决方案1 使用替换光标cursor p5 的原生函数 为什么它不起作用 The p5光标功能 https p
  • 使用 JavaScript 提交具有新值的表单。 (MVC)

    给定一个包含以下元素的表单
  • MacOS:ModuleNotFoundError:没有名为“_ctypes”的模块

    我在 pyenv 环境中使用 python 和 pip 但是当我尝试使用 pip 安装 numpy 时 pip install numpy 我收到以下错误 有人知道我哪里出错了吗 使用缓存的 numpy 1 21 0 zip 收集 nump
  • 获取共享缓存的逻辑 CPU 核心数(L1、L2、L3)

    下面是一些 C 代码 它使用以下命令检测 Windows 上 L1 L2 和 L3 CPU 缓存的大小 typedef BOOL WINAPI LPFN GLPI PSYSTEM LOGICAL PROCESSOR INFORMATION
  • 错误:使用未分配的局部变量(对于字符串数组)

    我正在从 App config 文件中读取连接字符串 为此我有以下代码 try string dbnames int counter 0 foreach ConnectionStringSettings connSettings in Co
  • 三.JSL:加载Blender模型需要本地服务器吗?

    我正在使用 Three js 开发基于 Web 的 3D WebGL 应用程序 我正在尝试使用以下代码加载 Blender 模型 JS 文件 var loader new THREE JSONLoader var jsonLoader ne
  • SQLAlchemy 在同一事务中删除和插入

    我正在使用 SQLAlchemy 并在一个事务中 我想要执行以下操作 删除满足特定条件的所有记录 假设这是Cars color red 现在 我想插入满足特定条件的所有汽车 例如Cars type Honda 现在假设我的数据库只是一个包含
  • 如何调试 SwiftUI AttributeGraph 循环警告?

    我在使用 SwiftUI 的应用程序中收到很多 AttributeGraph 循环警告 有什么方法可以调试导致它的原因吗 这是控制台中显示的内容 AttributeGraph cycle detected through attribute
  • 创建一个通用 Swift 函数以返回 Core Data 实体数组

    警告 我对 Swift 和 Core Data 还很陌生 我的代码中有几个函数返回特定实体类型的数组 func fetchStores gt Store var stores Store let fetchRequest NSFetchRe
  • TypeScript:导入的模块类不可见

    我正在使用多个模块测试打字稿编译器 这些模块将被编译为 AMD 模块 我有一个模块 测试 和一个将使用它的单独文件 test ts export module test use strict export class Person age
  • 相交的矩形

    这是一个分析几何类型的问题 我不确定我可以将其发布在这里 但是我必须想出一个 Java 函数来执行此功能 我在页面 swing 容器中有多个矩形 我知道现在我需要找到哪些矩形彼此相交 这里的一件好事是相交的矩形将始终具有相同的 y 分量 并
  • SQL 选择一列中具有重复值的所有行

    我有一个users中包含重复值的表employee id柱子 我需要列出具有重复的employee ids 的所有行及其姓名 我需要查看所有具有重复项的用户employee id这样我就可以消除哪些值是有效的冲突 SELECT name e
  • Windows Phone Silverlight 8.1 不支持 Windows.UI.Notifications.ToastNotification API?

    我正在尝试验证我的应用程序 但出现以下错误 发现错误 支持的 API 测试检测到以下错误 This API is not supported for this application type Api Windows UI Notifica
  • 需要帮助以更有效的方式设计搜索算法

    我有一个涉及生物领域的问题 现在我有4个非常大的文件 每个有1亿行 但结构相当简单 这些文件的每一行只有2个字段 都代表一种基因 我的目标是 设计一种有效的算法 可以实现以下目标 在这 4 个文件的内容中找到一个圆圈 圆定义为 field
  • 解读 C++ 模板错误消息

    当人们说 C 的错误消息对于模板来说非常糟糕时 我真的开始理解他们的意思了 对于像函数与其原型不匹配这样简单的事情 我见过可怕的长错误 有什么技巧可以破译这些错误吗 编辑 我同时使用 gcc 和 MSVC 他们俩看起来都非常可怕 您可以尝试
  • 如何从闭包内部修改在闭包外部定义的变量?

    如何从闭包内部修改在闭包外部定义的变量 Code fn main let mut t foo to string println t let mut closure t clear closure println t 编译错误 cannot
  • 为什么 jQuery 或 getElementById 等 DOM 方法找不到该元素?

    可能的原因有哪些document getElementById id 或者任何其他 DOM 方法 jQuery 选择器找不到元素 示例问题包括 jQuery 默默地无法绑定事件处理程序 jQuery getter 方法 val html t
  • 当我更改控件的左侧位置和宽度时,如何阻止控件抽搐?

    我有一个用户可以用鼠标调整大小的控件 当它们移动到右侧时 我只需更改宽度 一切正常 但是 当它们移动左侧尺寸时 我必须更改 左侧 和 宽度 属性 控件的右侧明显抽搐 在新位置显示旧宽度 如果我使用边界同时设置左侧和宽度 它仍然会抽搐 是否将