关于 TabControl 获取 被鼠标右键的 TabPage 而编写的函数...

功能:

1.不需考虑 SizeMode 情况

2.可以获取通过鼠标右键点击的 Tab

3.且顺便返回鼠标左键点的 Tab

/// <summary>
/// 获取被鼠标点击的TabPage [包括鼠标右键]
///
/// 时间:2021/08/09 22:15:41
/// 适用:通用性
/// 测试:正确
/// </summary>
/// <param name="tc"></param>
/// <param name="e"></param>
/// <param name="clkTp"></param>
/// <returns></returns>
public static bool Clk(TabControl tc, MouseEventArgs e, out TabPage clkTp)
{
clkTp = null;
if (e.Button == MouseButtons.Left)
{
clkTp = tc.SelectedTab;
return true;
} bool bol = false;
int cnt = tc.TabPages.Count;
if (cnt < 1)
return bol;

Rectangle rect;
int eY = e.Y;
int eX = e.X;
int i;
cnt--;
for (i = cnt; i > -1; i--)
{
rect = tc.GetTabRect(i);
bol = rect.Contains(e.Location);
if (bol)
break;
} if (i > -1)
{
clkTp = tc.TabPages[i];
bol = true;
}
return bol;
}

交流 QQ : 2412366909@qq.com
手机号码:177-7499-4428

注:本人测试过程中暂未发现造成存取不正确的问题

    Rectangle rect;

关于 TabControl 获取 被鼠标右键的 TabPage 而编写的函数...的更多相关文章

  1. Delphi 获取当前鼠标下的控件内容

    Delphi 获取当前鼠标下的控件内容 主要函数: GetCursorPos://获取鼠标的位置 WindowFromPoint://获取制定point下的handle GetClassName:// ...

  2. js实现自己定义鼠标右键-------Day45

    又是周末了,只是事实上这在国外应该算是一周的開始吧,无论怎么说,今天是在歇息,放松我紧绷的神经,放松我有些疲惫的精神,昨晚上要裂了般的头疼,仿佛全部的数据都在脑子字面飞舞旋转,伴着一阵阵的恶心,当时把 ...

  3. 手动添加 Git bash 到鼠标右键

    由于不知原因,右键没有了Git Bash Here,没有这个右键菜单导致获取Git仓库中的代码很不方便,所以决定通过注册表的方式将这个菜单加出来. 1.win + R,输入"regedit& ...

  4. win10 uwp 获取按钮鼠标左键按下

    我们可以使用PointerPressed获得鼠标右键按下,但是我们如何获得左键? 其实UWP已经没有MouseLeftButtonDown,于是我们可以使用一个简单方法去获取鼠标左键按下. 我们在xa ...

  5. Html鼠标右键菜单代码

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. JQuery模拟网页中自定义鼠标右键菜单

    题外话.......最近在开发一个网站项目的时候,需要用到网页自定义右键菜单,在网上看了各路前辈大神的操作,头晕目眩,为了达到目的,突然灵机一动,于是便有了这篇文章. 先放个效果图(沾沾自喜,大神勿喷 ...

  7. Python_Selenium之鼠标右键

    Python_Selenium之鼠标右键 一.步骤: (以百度为例)获取百度网址 找到需要右键的元素(定位),xpath表达式为“//*[@id='lg']/img” 然后,右键选择“在新标签页中打开 ...

  8. OpenLayers 3 之 加入地图鼠标右键菜单

    加入右键菜单,首先我们要监听鼠标右键点击的操作,我们知道鼠标右键事件名是 contextmenu.当鼠标在 html 元素之上,点击鼠标右键,便会触发 contextmenu 事件,在 context ...

  9. Javascript和jquery事件--鼠标右键事件,contextmenu

    右键点击触发是浏览器的默认菜单事件contextmenu,你可以选择阻止它,使用event.preventDefault();或者return false;. 想要定义右键点击事件,关注的是mouse ...

  10. jquery-11 如何制作鼠标右键菜单

    jquery-11 如何制作鼠标右键菜单 一.总结 一句话总结:核心原理:找到右键菜单事件contextmenu,return false去掉默认事件,然后判断用户是否点的右键,然后在鼠标的位置显示菜 ...

随机推荐

  1. Python 获取IP地址

    import socket def get_host_ip(): """ 查询本机ip地址 :return: """ try: s=sock ...

  2. 求两个自然数之间的最大公约数C++实现

    1 #include "pch.h" 2 #include <iostream> 3 using namespace std; 4 5 int main() 6 { 7 ...

  3. 25 bootstrap--v3--datetimepicker时间选择器--应用

    在模板中引用响应的文件 比如: layout.html <link rel="stylesheet" href="{% static 'stark/plugins/ ...

  4. sql 错误问题

    message: ### Error querying database.  Cause: java.sql.SQLSyntaxErrorException: SELECT command denie ...

  5. scala之函数式编程

    1.面相对象编程和函数式编程 2.函数和方法的区别 scala可以在任何的语法结构中声明任何的语法: scala中函数可以嵌套定义: scala中如果main内部的函数 和 main外部的函数名称.参 ...

  6. vue 封装时间格式化和number精确度

    //format.js 公用js /** * Parse the time to string * @param {(Object|string|number)} time * @param {str ...

  7. 【收藏】js数组图

  8. Control M 复习笔记

    记录一些复习过程想通的知识点 1.我们教案中看到的图基本都是复平面,从来没有看到过所谓s域或z域,不同的稳定区域只是因为从复平面到函数中存在不同的映射过程(s函数和z函数). s函数是纯粹的频域,也就 ...

  9. C#——》发布ASP.NET Core项目到Windows IIS服务器中环境部署

    服务器:Windows Server2012 R2 IIS:8 .net Core版本:1.1.2 一,在VS中点击项目-->依赖项-->SDK下可以查看当前项目.Net core是哪个版 ...

  10. 根据id 删除树结构中的数据

    根据id 删除树结构中的数据  filterHandle(data, id) {                         var newData = data.filter(x => x ...