解决cefsharp在winform中不显示tooltipText问题(网页元素的title提示)
1.监听网页属性改变事件
webView.PropertyChanged += webView_PropertyChanged;
2.拖一个ToolTip控件到窗体
3.在webView_PropertyChanged这个事件处理函数中,获取TooltipText并显示出来
//隐藏toolTip
if (this.IsHandleCreated)
{
this.BeginInvoke(new MethodInvoker(() =>
{
if (this.IsHandleCreated && !this.IsDisposed)
{
if (this.toolTip1.Active)
{
this.toolTip1.Hide(this);
}
}
}));
} if (e.PropertyName == "TooltipText") //tooltipText改变事件
{
string tooltipText = this.webView.TooltipText;
Point elementPos = new Point(Cursor.Position.X - this.Location.X, Cursor.Position.Y - this.Location.Y);
if (!String.IsNullOrEmpty(tooltipText))
{
this.Invoke(new MethodInvoker(() =>
{
System.Windows.Forms.Timer timer = new System.Windows.Forms.Timer();
timer.Interval = ;
timer.Tick += (timer_sender, timer_e) =>
{
Point nowPos = new Point(Cursor.Position.X - this.Location.X, Cursor.Position.Y - this.Location.Y);
//if ((nowPos.X <= elementPos.X + 20 && nowPos.X >= elementPos.X - 20) && (nowPos.Y <= elementPos.Y + 20 && nowPos.Y >= elementPos.Y - 20)) //鼠标停留了500ms(范围限定在一定范围)
if (this.webView.TooltipText == tooltipText) //600毫秒后,tooltipText没变
{
this.toolTip1.Show(tooltipText, this, nowPos.X + , nowPos.Y + );
}
(timer_sender as System.Windows.Forms.Timer).Stop();
(timer_sender as System.Windows.Forms.Timer).Dispose();
};
timer.Start(); }));
}
}
解决cefsharp在winform中不显示tooltipText问题(网页元素的title提示)的更多相关文章
- 解决DataGridView在多线程中无法显示滚动条的问题
在多线程中对DataGridView指定 DataSource 来填充数据,更新数据的时候,会导致DataGridView出现假死,显示错误或者滚动条无法显示的问题,在保证了DataGridView的 ...
- C# Winform 中webBrowser显示html内容时禁止错误提示的方法
在winform中有一个控件可以显示html的内容,该控件就是webbrowser,设置它的DocumenText属性为HTML的内容即可. 在使用WebBrowser做UI的时候,我们有时不希望里面 ...
- winform中让显示的图片覆盖到父窗体保持父窗体的不可选中的状态,且任务栏中不会显示子窗体的任务选项
要求:为父窗体添加一个类似于加载等待的功能,当窗体点击备份时弹出且覆盖掉窗体 问题一产生:当为弹窗添加控件时,form.show();导致窗体卡死,控件变得透明化; 问题一分析:当窗体show();之 ...
- WinForm中DataGridView显示更新数据--人性版
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...
- 把一个窗体嵌入到WinForm中进行显示,以CMD窗口为例
1.添加引用 using System.Runtime.InteropServices; 2. 加入以下代码段 [DllImport("User32.dll ", EntryPoi ...
- 在winform中使用cefsharp.winform嵌入浏览器(含视频教程)
免费视频教程和源码: https://www.bilibili.com/video/av84573813/ 1. 开始使用CefSharp在Winform中嵌入网页 2. 解决重复打开Cefsharp ...
- 在Eclipse中运行Web项目Jsp网页时提示端口被占用的解决办法:Several ports (8005, 8888, 8009) required by Tomcat v9.0 Server at localhost are already in use.
问题: 在Eclipse中运行Web项目Jsp网页启动Tomcat时提示端口被占用: Several ports (8005, 8080, 8009) required by Tomcat v9.0 ...
- C#中winform中panel重叠无法显示问题
C#中winform中panel重叠无法显示问题: 最近开发一个项目有个需求是需要多个模式来回切换的,本来考虑使用多个窗口来实现这个功能,但是这样做浪费资源,而且工作量大,所以想到使用panel控件来 ...
- C# WinForm 中Label自动换行 解决方法
在TableLayoutPannel中放着一些Label如果把Label的AutoSize属性设成True的话,文字超过label长度时就会自动增加,直到后面的字出窗体以外设置成False时,一旦到达 ...
随机推荐
- Nancy之Forms authentication的简单使用
一.前言 想必大家或多或少都听过微软推出的ASP.NET Identity技术,可以简单的认为就是一种授权的实现 很巧的是,Nancy中也有与之相类似的技术Authentication,这两者之间都用 ...
- xp IP安全策略 ipseccmd
///下载 ipseccmd.exe //禁止 xp 连接 public static void BannedXPRunCmd() { string str = Console.ReadLine(); ...
- jquery改变文本框颜色
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- [译]Godot系列教程二 - 场景实例化(Instancing)
场景实例化(Instancing) 原理阐述 创建一个场景并将节点扔到里面对于小项目是适用的,但随着项目不断发展,用到越来越多的节点,整个项目很快就会演化成难以管理的状态. 为了解决这个问题,Godo ...
- 11、ASP.NET MVC入门到精通——AspnetMVC分页
本系列目录:ASP.NET MVC4入门到精通系列目录汇总 说起分页,这基本上是我们Web开发中遇见得最多的场景,没有之一,可即便如此,要做出比较优雅的分页还是需要技巧的.这里我先说一种ASP.NET ...
- 文章转载利用border、transparent实现微风
微风效果预览 微风源码 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> & ...
- JS全屏漂浮广告、移入光标停止移动
点击这里查看效果 以下是代码: <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Ty ...
- 使用jq插入节点
.append()和.appendTo()两种方法功能相同,主要的不同是语法——内容和目标的位置不同 append()前面是要选择的对象,后面是要在对象内插入的元素内容 appendTo()前面是要插 ...
- SharePoint 2013 Ajax 造成页面无法编辑
1.如下图,在编辑页面的时候,出现如下错误“此网页自上次打开后已被修改,必须再次打开该网页”,页面上没有什么特别的设置,就是default.aspx: 2.编辑之前页面,只有一个内容编辑器部件,和若干 ...
- SharePoint 2013 定制搜索显示模板(二)
前言 之前一篇博客,简单的介绍了如何定制搜索显示模板,这一次,我们介绍一下如何定制搜索显示时,弹出来的那个页面,相信这个大家也都会遇到的. 1.第一部分就是搜索显示模板的部分,第二部分就是搜索项目详情 ...