HTML按钮控制C#程序截图并查看
2016-06-27 09:26
405 查看
在上一篇博客中http://blog.csdn.net/qq_30507287/article/details/51746893,描述了如何利用窗体界面的按钮来控制截图的功能的实现。本次博客描述的是如何利用HTML中的按钮来控制C#后台程序的运行来实现截图。
(1)首先在HTML中创建两个type=“button”的按钮,其多创建如下:
<input type="button" id="onCut"style="width:26px; height:24px;background-image:url('./icon/jianqie.png');" value="">
<input type="button"id="onLook" style="width:26px; height:24px;background-image:url('./icon/Look1.png');" value="">
其中,id=”onCut”的按钮是用来控制截图功能的,id=”onLook”的按钮是用来打开默认的文件,用来查看截完的图。当然其他属性:高度,宽度,背景图标都可以自定义。
(2)在窗体的webbrowser控件中导入要打开的HTML文件,此处在之前的博客中已经给出详细的描述,读入HTML文件的代码如下。
//网页对象
System.IO.FileInfo file =
newSystem.IO.FileInfo("jietu.html");
//WebBrowser控件显示的网页文件路径
this.webBrowser1.Url= new
Uri(file.FullName);
//将当前类设置为可由脚本访问
this.webBrowser1.ObjectForScripting=
this;
说明:此处需要添加可视化的导入:[System.Runtime.InteropServices.ComVisibleAttribute(true)]
(3)做完前两步之后,我们需要添加C#代码,如何来获取HTML文件中的button事件,就是捕获该事件,用于执行相关的程序。当然需要在加载完整个网页之后才能执行该过程,因此捕获网页按钮的事件放在加载完HTML之后的DocumentCompleted()方法中,如下:
privatevoidwebBrowser1_DocumentCompleted(object sender,WebBrowserDocumentCompletedEventArgs
e)
{
//网页控制截图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
htmlDoc = webBrowser1.Document;
HtmlElement oncut = htmlDoc.All["onCut"];
if(oncut != null)
{
oncut.Click +=
new HtmlElementEventHandler(aboutBtn_Click);
}
//网页控制打开文件。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
htmlOpen = webBrowser1.Document;
HtmlElement onlook = htmlOpen.All["onLook"];
if(onlook != null)
{
onlook.Click +=
new HtmlElementEventHandler(openFile_Click);
}
}
说明1:htmlDoc和htmlOpen是声明的HtmlDocumen
类型的全局变量;
说明2:aboutBtn_Click是实现截图的方法名,该部分的代码在博客http://blog.csdn.net/qq_30507287/article/details/51746893中以给出。
说明3:openFile_Click是实现打开截图保存的文件夹的方法。该方法如下:
privatevoidopenFile_Click(object sender,
EventArgs e)
{
System.Diagnostics.Process.Start(@"XXX\YYY\ZZZ");//截图之后保存的路径
}
具体文档下载链接:http://download.csdn.net/detail/qq_30507287/9560447
(1)首先在HTML中创建两个type=“button”的按钮,其多创建如下:
<input type="button" id="onCut"style="width:26px; height:24px;background-image:url('./icon/jianqie.png');" value="">
<input type="button"id="onLook" style="width:26px; height:24px;background-image:url('./icon/Look1.png');" value="">
其中,id=”onCut”的按钮是用来控制截图功能的,id=”onLook”的按钮是用来打开默认的文件,用来查看截完的图。当然其他属性:高度,宽度,背景图标都可以自定义。
(2)在窗体的webbrowser控件中导入要打开的HTML文件,此处在之前的博客中已经给出详细的描述,读入HTML文件的代码如下。
//网页对象
System.IO.FileInfo file =
newSystem.IO.FileInfo("jietu.html");
//WebBrowser控件显示的网页文件路径
this.webBrowser1.Url= new
Uri(file.FullName);
//将当前类设置为可由脚本访问
this.webBrowser1.ObjectForScripting=
this;
说明:此处需要添加可视化的导入:[System.Runtime.InteropServices.ComVisibleAttribute(true)]
(3)做完前两步之后,我们需要添加C#代码,如何来获取HTML文件中的button事件,就是捕获该事件,用于执行相关的程序。当然需要在加载完整个网页之后才能执行该过程,因此捕获网页按钮的事件放在加载完HTML之后的DocumentCompleted()方法中,如下:
privatevoidwebBrowser1_DocumentCompleted(object sender,WebBrowserDocumentCompletedEventArgs
e)
{
//网页控制截图。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
htmlDoc = webBrowser1.Document;
HtmlElement oncut = htmlDoc.All["onCut"];
if(oncut != null)
{
oncut.Click +=
new HtmlElementEventHandler(aboutBtn_Click);
}
//网页控制打开文件。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。
htmlOpen = webBrowser1.Document;
HtmlElement onlook = htmlOpen.All["onLook"];
if(onlook != null)
{
onlook.Click +=
new HtmlElementEventHandler(openFile_Click);
}
}
说明1:htmlDoc和htmlOpen是声明的HtmlDocumen
类型的全局变量;
说明2:aboutBtn_Click是实现截图的方法名,该部分的代码在博客http://blog.csdn.net/qq_30507287/article/details/51746893中以给出。
说明3:openFile_Click是实现打开截图保存的文件夹的方法。该方法如下:
privatevoidopenFile_Click(object sender,
EventArgs e)
{
System.Diagnostics.Process.Start(@"XXX\YYY\ZZZ");//截图之后保存的路径
}
具体文档下载链接:http://download.csdn.net/detail/qq_30507287/9560447