C# 表单控件移动

2024-01-02

是否有办法控制可以移动表单的位置?

因此,如果我移动表单,它只能在垂直轴上移动,当我尝试水平移动它时,什么也不会发生。

我不想要一个有缺陷的实现,比如位置更改或移动事件并将其内联弹出。我没有办法使用 WndProc 覆盖之类的东西,但搜索了一段时间后,我找不到任何东西。请帮忙


例如:

using System.Runtime.InteropServices;

protected override void WndProc(ref Message m)
{
    if (m.Msg == 0x216)  // WM_MOVING = 0x216
    {
        Rectangle rect = 
           (Rectangle) Marshal.PtrToStructure(m.LParam, typeof (Rectangle));
        if (rect.Left < 100)
        {
            // compensates for right side drift
            rect.Width = rect.Width + (100 - rect.Left);
            // force left side to 100
            rect.X = 100;
            Marshal.StructureToPtr(rect, m.LParam, true);
        }
    }
    base.WndProc(ref m);
}

上面的代码将最小左侧位置设置为 100。

无需像 driis 那样重新创建 RECT 结构,.NET 原生 Rectangle 可以正常工作。但是,您必须通过 X 属性设置位置,因为 Left 是仅获取属性。

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

C# 表单控件移动 的相关文章

  • Qt 图表和数据可视化小部件

    我已经安装了 Qt 5 7 来尝试 Qt 图表和 Qt 数据可视化 但我在 Qt Designer 和 Qt Creator 中都找不到新的小部件 有什么建议我应该做什么才能让新的小部件出现在设计器中 我今天遇到了完全相同的问题 默认情况下
  • 使用 Json.NET 序列化子类

    我正在尝试使用 Json NET 序列化子类 生成的 json 包含超类的序列化属性 但是not子类对象的属性 这似乎与我发现的一个问题有关这里就这样 https stackoverflow com q 5863496 498969 但必须
  • ASP.NET Web 应用程序中的身份验证遇到问题

    我正在尝试对从登录页面登录我的 Web 应用程序的用户进行身份验证 我正在使用本教程 http support microsoft com kb 301240作为指南 它几乎准确地解释了我希望做什么 但是当我输入用户名和密码时 验证不起作用
  • .crt 部分?这个警告是什么意思?

    我最近收到此警告 VC 2010 warning LNK4210 CRT section exists there may be unhandled static initializers or terminators 我假设这是关键部分
  • 局部函数声明有什么用处吗?

    大多数像我这样的 C 程序员都曾犯过以下错误 class C int main C c declares a function c taking no arguments returning a C not as intended by m
  • 为什么子函数不销毁GtkWindow?

    这是我的代码 void window first void enter window2 GtkWidget w gpointer data void quit GtkWidget w gpointer data void quit int
  • 在没有 epsilon 的情况下可以将浮点数与 0.0 进行比较吗?

    我知道 要比较两个浮点值 需要使用一些 epsilon 精度 因为它们并不精确 但是 我想知道是否存在边缘情况 我不需要那个 epsilon 特别是 我想知道这样做是否总是安全的 double foo double x if x lt 0
  • 组合框下拉位置

    我有一个最大化的表单 其中包含 500px 的组合框控件 停靠在右上角 Width 尝试打开组合框后 列表的一半超出了屏幕 如何强制列表显示在表单中 棘手的问题 我找不到解决这个问题的好办法 只是一个解决方法 添加一个新类并粘贴如下所示的代
  • Linq 合并列表

    我的课 public class Foo public int A get set public List
  • 如何减少 MinGW g++ 编译器生成的可执行文件的大小?

    我有一个简单的 Hello world C 程序 在 Win XP 下由 MinGW g 编译器编译为 500kB 可执行文件 有人说这是由于iostream的库和静态链接libstdc dll Using s链接器选项有点帮助 减少了 5
  • 应用程序处于中断模式。您的应用程序已进入中断状态,

    我发现自己遇到了同样的问题here https stackoverflow com questions 36204009 disable break mode page in vs2015 我在 dll 中使用 Windows 窗体 这是针
  • 如何让XmlReader读取C#中的属性?

    我有一个 XML Stream 其中包含以下 XML 内容
  • 我可以将 UseCSharpNullComparisonBehavior 用于单个查询吗?

    我有一个查询 该查询曾经是存储过程 现已转换为 EF 查询 现在已经超时了 使用 SQL Profiler 我可以看到生成的 SQL 的唯一区别是 EF 转变的新行为entity Property value into entity Pro
  • 传递数组时在 C 中的函数参数中强制指定数组大小

    Context 在 C 中 我有一个以数组作为参数的函数 该参数用作该函数的输出 输出的大小始终相同 我会 让阅读代码的人清楚所需的大小 不过它已经在函数注释中了 理想情况下 编译会输出警告或错误 这样我就可以在编译时而不是运行时防止出现问
  • valgrind 在 Raspberry Pi 上返回未处理的指令

    我最近一直在尝试在运行 Debian GNU Linux7 0 喘息 的树莓派 型号 b 上使用 valgrind 来调试分段错误 每次我在编译的 C 程序上运行 valgrind 时 都会得到类似以下内容的信息 disInstr arm
  • Gremlin.net 文本包含等效项

    我正在使用 Gremlin net 库连接到 janus 图形服务器 我使用 cassandra 和弹性搜索进行数据存储和索引 在我使用的 gremlin 语言和 gremlin 控制台中文本包含在属性的文本中进行搜索 我正在使用混合索引
  • 如何同步nosql db(ravendb)中的更改

    我已经开始在 RavenDB 的示例上学习 NoSQL 我从一个最简单的模型开始 假设我们有由用户创建的主题 public class Topic public string Id get protected set public stri
  • C++ 中是否有与 PHP 的explode() 函数等效的函数? [复制]

    这个问题在这里已经有答案了 可能的重复 在 C 中分割字符串 https stackoverflow com questions 236129 splitting a string in c 在 PHP 中 explode 函数将获取一个字
  • Boost.asio和异步链,unique_ptr?

    我对异步编程不太熟悉 我有一个问题 我的问题如下 给出 boost asio 中 C 11 的 echo server 示例 http www boost org doc libs 1 60 0 doc html boost asio ex
  • 从脚本启用/禁用 GameObject 组件 [Unity3D]

    我需要获取一个脚本中设置的布尔值 放入名为 bouclier 的变量 以启用或禁用游戏对象 该变量位于游戏对象 Player 中 此处右下角 我需要启用或禁用这个游戏对象 Bouclier01 为此 我将脚本附加到游戏对象 Bouclier

随机推荐

  • 覆盖率测试工具 Django Rest Framework

    我正在研究 TDD 并在 Django Rest Framework 中开发 API 我研究了一个需求 但找不到一些工具来解决我的问题 我试图找出我的测试覆盖了我的应用程序的百分比 为了了解缺少封面的可能性和可能的 建议数量 我找到了cov
  • 如何将 EF Code-First 转换为 Database First?

    我想首先将我的代码优先项目转换为数据库 是否有一种自动化的方法 或者我应该删除实体和上下文代码并从创建的数据库创建模型 Entity Framework Power Tools 似乎支持一项名为 逆向工程代码优先 的功能 你可以下载它her
  • 使用 UTF8 编码将 Excel 转换为 CSV [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个 Excel 文件 其中包含一些西班牙语字符 波形符等 我需要将其转换为 CSV 文件以用作导入文件 但是 当我 另存为 CSV
  • 如何解释C中命令行参数中的特殊字符?

    第一个问题 假设我们编写一个简单的程序 它接受命令行参数并打印到文件 如果用户输入 writetofile 你好 0 n w orl t y bash 回复 0 事件没有 成立 如果用户不知道使用引号 或转义字符 之类的东西 我该如何处理这
  • mcrypt 已被弃用,有什么替代方案?

    mcrypt 扩展名是已弃用 http php net manual en migration71 deprecated php migration71 deprecated ext mcrypt根据发布的评论 将在 PHP 7 2 中删除
  • 如何在SQL中按任意条件排序

    我有下表 CREATE TABLE Bable id int identity primary key name varchar 20 about varchar 30 INSERT INTO Bable name about VALUES
  • 检测android设备是否连接到互联网

    这是我的课程 用于检查设备是否连接到互联网 import android app Activity import android content Context import android net ConnectivityManager
  • React:我可以在渲染之前检查状态是否存在吗

    我是 React 新手 我制作了一个显示用户名 user 的导航栏
  • 错误:与运算符 == 不匹配

    我的三个文件的多个区域都收到错误 我的默认构造函数也有问题 这就是它被注释掉的原因 但我想先解决这个问题 ComputerType h This file gives the specification of a ComputerType
  • WPF - 列表视图滚动条未显示

    因此 正如问题所暗示的那样 我无法让滚动条显示在我的列表视图中 用网格替换 StackPanel 是可行的 但问题是选项卡控件中的两个列表视图然后堆叠在彼此和我的标签之上 建议
  • Swift import 语句失败

    已更新 答案在底部 我使用的是与 Twitter 的新 Fabric 平台一起安装的 TwitterKit 框架 这段代码在ViewController swift工作得很好 ViewController swift Following C
  • 如何在 Java 控制台应用程序中从扫描仪读取字符串?

    import java util Scanner class MyClass public static void main String args Scanner scanner new Scanner System in int emp
  • 致命错误:在 C:\wamp\www\ 中找不到“Stripe”类

    我收到一个错误 提示找不到类 但我显然有它所在位置的正确路径 我遇到的每一篇文章都声称问题出在 require one include 或 require 中 不包括正确的路径 我已经尝试了所有 3 个 但仍然没有运气 我的数据库调用遵循相
  • 将训练好的 Tensorflow 模型转换为 protobuf

    初始网络中Android Tensorflow 演示 https github com tensorflow tensorflow tree master tensorflow examples android将模型存储为 protobuf
  • 使用通用方法的代码分析警告 CA1004

    我有以下通用方法 Load an object from the disk public static T DeserializeObject
  • 如何从Powershell调用批处理脚本?

    我有一个大批处理脚本 它设置一堆环境变量 我想从 powershell 调用该批处理脚本 这样我就可以获得脚本和 powershell 设置的环境变量的好处 如果你抓住了PowerShell 社区扩展 https github com Ps
  • 延迟限制 http api 调用

    我正在尝试对 REST API 实施一些限制 A典型方法 http django tastypie readthedocs org en latest throttling html在某个阈值之后阻止请求 带有403 or 429回复 然而
  • 如何部署:安装夹层主题

    如何准确 一步一步地安装 Mezzanine 主题 E g 现代免费主题 https github com thecodinghouse mezzanine themes 前提条件 0 版本控制 Python 2 7 6 Django 1
  • Node Express 中间件在一次调用中输出 console.log() 两次?

    只是一个关于某些 Node Express 中间件的简单问题 该中间件在我的节点 cmd 提示符中输出 1 个对 console log 的调用两次 它只是没有意义 想知道是否有人可以解释为什么这种情况发生在我身上 服务器 js var e
  • C# 表单控件移动

    是否有办法控制可以移动表单的位置 因此 如果我移动表单 它只能在垂直轴上移动 当我尝试水平移动它时 什么也不会发生 我不想要一个有缺陷的实现 比如位置更改或移动事件并将其内联弹出 我没有办法使用 WndProc 覆盖之类的东西 但搜索了一段