查找鼠标相对于控件而不是屏幕的位置

2024-02-08

我有一个名为的图片框BGImage。我希望当用户单击此按钮时我可以捕获鼠标相对于BGImage.

我尝试过使用MousePosition,却发现它给出了鼠标在屏幕上的位置,而不是在 PictureBox 上。

所以我也尝试使用PointToClient:

Dim MousePos As Point = Me.PointToClient(MousePosition)

但这给了我位置{X=1866,Y=55}而我实际上点击了 PictureBox{X=516,Y=284}.

我认为问题的出现是因为我已经全屏了我的程序并将PictureBox的位置设置在屏幕的中心(BGImage.Location = New Point((My.Computer.Screen.WorkingArea.Width / 2) - (1008 / 2), ((My.Computer.Screen.WorkingArea.Height / 2) - (567 / 2))))

我还应该提到 PictureBox 的大小是 1008 × 567 像素,而我的屏幕分辨率是 1366 × 768。

有什么办法可以获取鼠标位置relative到BGImage的位置?


将鼠标单击事件添加到图片框
然后使用 MouseEventArgs 获取图片框中的鼠标位置。
这将为您提供图片框内的 X 和 Y 位置。

Dim PPoint As Point
Private Sub PictureBox1_MouseClick(sender As Object, e As MouseEventArgs) Handles PictureBox1.MouseClick
    PPoint = New Point(e.X, e.Y)
    MsgBox(Convert.ToString(PPoint))
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

查找鼠标相对于控件而不是屏幕的位置 的相关文章

  • “重载”在子类中如何工作?

    我有一个基类和一个子类 它们都有相同的属性 但我不明白whyVB 希望我对子类中的属性使用 重载 区别在于该属性的子类版本是Shared而父类基本上是为了结构 这些属性如下所示 Public MustInherit Class Parent
  • DataGridView 数据绑定到 List>

    给定代码 class Foo public string Value get set public int Id get set List
  • String.Format - 它如何工作以及如何实现自定义格式字符串

    With String Format 例如可以格式化DateTime对象以许多不同的方式 每次我寻找所需的格式时 我都需要在互联网上搜索 我几乎总能找到一个可以使用的例子 例如 String Format 0 MM dd yyyy Date
  • 使用文本和进度条填充 DataGridView

    我正在创建一个多线程应用程序 其中每个线程将在我的应用程序中显示为一行DataGridView 我想要一个ProgressBar每行指示相应的线程进度 问题是 这可能吗 如果是这样 怎么办 我添加了类 DataGridView Progre
  • File.ReadAllLines 或流读取器

    我们可以使用以下方式读取文件StreamReader http msdn microsoft com en us library vstudio system io streamreader或通过使用File ReadAllLines ht
  • 如何在 vb.Net 中设置默认表单?

    如何将第四个表单设置为在 Visual Studio 2008 中按 f5 时将运行的默认表单 因为表单 1 始终是第一个启动的 在解决方案资源管理器中右键单击您的项目 选择属性 选择应用程序选项卡 从 启动表单 下的下拉列表中选择您的表单
  • 如何清除组合框?

    我有一些组合框设置为下拉列表 用户可以在其中选择一个数字 我还有一个清除按钮 应该清除组合框中的文本 但我似乎无法得到它 我试过了 doesn t work cboxHour Text and doesn t work cboxHour R
  • 用户无法安装单击一次应用程序

    我有一个相对简单的支持应用程序 我选择通过单击一次将其部署给我们的支持人员 我认为它仍然被称为 Click Once 我在 VS2008 中使用项目属性的发布选项卡 一些用户已成功点击该网址 下载并运行该应用程序 某一特定用户不能 他安装了
  • DataGridView小数不排序

    好吧 我有一个 DataGridView 它的数据绑定如下 dataGridViewChartOre AutoGenerateColumns false dataGridViewChartOre DataSource xml GetOreC
  • 为什么在 WinForms 中可以跨线程添加控件,而在 WPF 中却不能?

    在虚拟 WinForms 应用程序中 我可以在设计时创建 ListBox 在运行时创建后台线程 然后从后台线程将控件添加到 ListBox 但如果我在 WPF 中执行相同的操作 则会出现错误 为什么我可以在 WinForms 中执行此操作
  • 对 .NET Windows 安装程序应用程序执行注册表搜索

    我有一个 NET winform 安装程序应用程序 在安装之前 我会进行注册表搜索以检查计算机上是否安装了 MS Access Runtime 搜索目标机器 搜索目标机器的属性 启动条件 启动条件的属性 但是我想避免对路径进行硬编码 例如
  • XNA - 在表单中嵌入 DirectX 控件?

    我想将 DirectX 好吧 XNA 的东西渲染到 system windows forms 控件而不是整个窗口 这样我就可以将它与按钮和东西配对 这可能吗 我会使用哪个控件 我该怎么做呢 我已经搜索了文档 但我不知道应该使用哪些术语 是的
  • 如何使用 VB.NET 或 C#.NET 代码从 yahoo 邮件 ID 发送邮件

    我想从我的 yahoomail Id 发送邮件 如何使用 VB NET 或 C NET 代码从 yahoo mail Id 发送邮件 需要善意的帮助 提前谢谢 西瓦库马尔 以下是一些制作基本 html 电子邮件消息的示例 http help
  • 在VB.net中动态添加用户控件

    我在 Vb net Windows 应用程序 中制作了自定义 UserControl 如何将其动态添加到表单中 UserControl 本质上只是另一个类 它继承自 Control 因此您可以使用控件执行各种操作 但除此之外它只是一个类 因
  • windows XP中如何设置默认编码?

    我尝试使用 StreamReader 打开文件并设置编码 但我希望它采用默认 Windows 编码 我如何更改我的 Windows 编码 区域和语言选项控制面板项目 高级选项卡 影响整个计算机
  • 为什么我在 WinForms 列表框中得到“System.Data.DataRowView”而不是实际值?

    每当我运行代码并尝试查看highscore我在列表框中得到的只是System Data DataRowView 谁能明白为什么吗 Code MySqlConnection myConn new MySqlConnection connStr
  • Environment.CurrentDirectory 与 System.IO.Directory.GetCurrentDirectory

    我正在编写一个 Net WinForms 并不断在调试和发布配置之间切换 并且有一些文件我需要任一配置才能访问 我想做的是将文件放在 BIN 文件夹中的公共目录中 这样它看起来像这样 MyProject Bin CommonFiles My
  • 如何隐藏数据列表中的项目

    我想隐藏一个项目datalist根据某种条件起诉ItemBound how Wrap a PlaceHolder控制整个内容ItemTemplate 然后在 ItemDataBound 事件中 您可以执行以下操作 Protected Sub
  • 这段代码有什么问题。如果用户选择或不选择复选框,为什么它仍然显示 MsgBox? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 无论我是否选择复选框 它仍然会给出
  • 装配和产品版本不匹配

    我正在尝试在 asp net 网站中使用 Ajax 控件工具包 我从之前的一个示例项目中复制了 dll 它有以下详细信息 Assembly Version 3 5 40412 0 File Version 3 5 40412 2 Inter

随机推荐

  • 我如何检索通过java play中的post传递的数据

    这是我的代码 我需要检索 POST 中发送的数据 play db jpa Transactional public static Result registered String fullname String email String p
  • 重新编码鼠标 mids 对象

    我有一个mids对象创建自mice 我想重新编码一些估算变量并保留mids目的 我知道我可以转换mids反对 长 complete 但我想保留mids对象 因为它有一些额外的用途 这是一个使用的示例nhanes数据集 跑步mice 为变量创
  • 如何将 div 高度设置为所选打印纸张的 100%?

    如何将高度设置为所选打印纸张的 100 CSS width 100 height 100 margin auto margin top 0px important border 1px solid 当我在 Google Chrome 中打印
  • 所有本机修订的数据库在哪里?

    我已经阅读了所有 SO 问题 编码恐怖文章 并用 Google 搜索了我的大脑 寻找修订控制数据的最佳方法 它们都可以工作 并且都有基于用例等的适当实现 我真正想知道的是为什么没有编写一个数据库来原生支持数据级别的修改 让我感到困惑的是 A
  • ffmpeg concat 产生 DTS 乱序错误

    我正在关注有关如何操作的文档连接 https trac ffmpeg org wiki Concatenate文件与 ffmpeg 但在这个过程中我看到很多警告 输出视频在第一个块后停止 但音频继续播放 这是我用来连接文件的命令 ffmpe
  • 如何使用 javascript 捕获旧值并将其设置为取消

    我有一个文本字段 我从中调用一个函数onChange事件 当该文本字段中的值发生更改时 我会在此处抛出一个确认窗口 如果单击取消 在确认窗口中 则必须将旧值设置回文本字段 如果单击 继续 或 确定 则应保留新值 我已经尝试了很长时间 但无法
  • AVCaptureOutput didOutputSampleBuffer 停止被调用

    我对委托方法有疑问didOutputSampleBuffer CMSampleBufferRef sampleBuffer fromConnection AVCaptureConnection connection of AVCapture
  • 空数组似乎同时等于 true 和 false

    空数组为 true 但也等于 false var arr console log Array arr if arr console log It s true if arr false console log It s false if a
  • AWS dax 稳定性问题

    我正在尝试将 DAX 引入我们的架构 但到目前为止尚未成功 通过 lambda 发生与 dax 的连接 完成的设置类似于 AWS 文档中的示例 Lambda 和 Dax 位于同一个 vpc 中 它们大部分时间都可以看到对方 并且 dax 正
  • 为什么我无法在 PHP 文件中使用 AJAX 发布 JSON 数据?

    我有一个 AJAX 脚本 可以在我的 PHP 文件之一中发布数据 var lname ptLastName val var fname ptFirstName val var mname ptMiddleName val ajax type
  • 如何在 JavaScript 中执行 str_replace,替换 JavaScript 中的文本?

    我想用str replace或其类似的替代方案来替换 JavaScript 中的某些文本 var text this is some sample text that i want to replace var new text repla
  • map 不是reactJS 中的函数

    当我执行 console log response data 时 它返回了 2 个数据集 即 post 和 user const dbdata setDBData useState useEffect async gt const resp
  • CSS 网格在 Flexbox 内时不会增长

    我对 CSS Grid 的理解是 它会增长以填充其父级 但是当父级的大小由 Flexbox 控制时 这似乎无法正常工作 In 这个例子 https stackblitz com edit js gds31u file index html
  • 如果一个数字位于两个数字之间,则分配一个值

    我试图将 1 的值分配给向量中 2 到 5 之间的每个数字 我认为 if then 语句会起作用 我遇到了一些麻烦 我不认为 2 x lt c 3 2 6 7 8 1 3 2 5 if 2
  • 返回唯一值而不删除重复项 - C#

    我知道关于删除重复项后返回数组中的唯一值有很多答案 但是删除重复项后数组中的每个元素不是都是唯一的吗 我只想在删除任何重复项之前返回唯一的值 如果该元素在原始数组中重复 我不希望它出现在最终数组中 那么这个数组 0 1 1 2 3 3 3
  • Google OAuth:无法使用授权代码获取刷新令牌

    我正在使用 Google API 客户端进行 Google Analytics 和 OAuth 2 0 我阅读此内容是为了获取刷新令牌 但它没有出现 https developers google com identity protocol
  • Internet Explorer 7 8:jQuery UI 效果仅工作一次

    Context 我使用 jQuery UI 效果 slide and drop 打开和关闭幻灯片 以下代码适用于 Chrome Firefox 和 IE 9 在 IE 7 和 8 上 我只能打开和关闭幻灯片一次 幻灯片保持隐藏状态后 有什么
  • 类库中的控制器和视图

    我有一组在许多项目中使用的控制器和视图 我想知道是否可以将其放入类库中并将其作为普通的 lib 文件重用 我怎样才能做到这一点 绝对可行 你需要的东西 在应用程序启动时注册路线的某种方法 一个了解库视图和应用程序特定视图的视图引擎 第一个很
  • 如何在ReactJs中制作步骤向导表单?

    我正在制作简历生成应用程序 并且我已经将这些事情完成了组件 目前有两个组件 例如 gt BasicDetails gt EmploymentDetails 完整的工作示例 https codesandbox io s next dynami
  • 查找鼠标相对于控件而不是屏幕的位置

    我有一个名为的图片框BGImage 我希望当用户单击此按钮时我可以捕获鼠标相对于BGImage 我尝试过使用MousePosition 却发现它给出了鼠标在屏幕上的位置 而不是在 PictureBox 上 所以我也尝试使用PointToCl