手机
当前位置:查字典教程网 >编程开发 >mssql数据库 >[js]javascript与剪贴板交互
[js]javascript与剪贴板交互
摘要:1.怎样操作剪贴板,从而实现复制、剪切与粘贴?同时判断剪贴板里边的数据是否是文本?if(!IsClipboardFormatAvailabl...

1.怎样操作剪贴板,从而实现复制、剪切与粘贴?同时判断剪贴板里边的数据是否是文本?

if(!IsClipboardFormatAvailable(CF_TEXT))

return;

if(!OpenClipboard(hwndMain))

return;

hglb=GetClipboardData(CF_TEXT);

if(hglb!=NULL)

{

lptstr=GlobalLock(hglb);

if(lptstr!=NULL)

{

//Calltheapplication-definedReplaceSelection

//functiontoinsertthetextandrepaintthe

//window.

ReplaceSelection(hwndSelected,pbox,lptstr);

GlobalUnlock(hglb);

}

}

CloseClipboard();

2.可以使用javascript获得windows剪贴板里的字符串吗?

比如在网页中实现点击一个文本框就把剪贴板里的字符粘贴进去

当然可以

<form>

<p>

<inputname=txtSearchvalue="">

<inputtype=buttonvalue=Copy2Cliponclick='javascript:vartextRange=txtSearch.createTextRange();textRange.execCommand("Copy")'>

</p>

<p>

<inputname="copyto"type="text"id="copyto">

<inputtype=buttonvalue=PastefromCliponclick='javascript:vartextRange=copyto.createTextRange();textRange.execCommand("Paste")'>

</p>

</form>

3.javascript和剪贴板的交互

一般可以这样将id为‘objid'的对象的内容copy到剪贴板

varrng=document.body.createTextRange();

rng.moveToElementText(document.getElementById("objid"));

rng.scrollIntoView();

rng.select();

rng.execCommand("Copy");

rng.collapse(false);

setTimeout("window.status=''",1800)

也可以用rng.execCommand("Past");将剪贴板的内容粘到光标当前位置。

内容参见msdn的textRange对象。

不过,copy到剪贴板的都是不带html标签的,所有html标签都将被过滤。

4.window.clipboardData.getData("Text")//可以获得剪贴版的文字

window.clipboardData.setData("Text","你的内容")//向剪贴板里写文本信息

5.怎么判断剪贴板中的数据是否为字符串而不是图片或别的信息?

PrivateSubCommand1_Click()

IfClipboard.GetFormat(vbCFText)OrClipboard.GetFormat(vbCFRTF)Then

MsgBox"ok"

EndIf

EndSub

6.请问如何判断剪贴板中不为空?

一、

Eg

判断windows剪贴板里是否为空,没有则读取图片到Image中

usesclipbrd;

ifClipBoard.HasFormat(CF_Picture)then

Image1.Picture.Assign(ClipBoard);

二、

usesClipbrd;

procedureTForm1.Button1Click(Sender:TObject);

begin

ifClipboard.FormatCount<=0then

{TODO:空};

end;

7.怎样确定剪贴板中的数据是否为图象?

GetFormat方法示例

本示例使用GetFormat方法确定Clipboard对象上数据的格式。要检验此示例,可将本例代码粘贴到一个窗体的声明部分,然后按F5键并单击该窗体。

PrivateSubForm_Click()

'定义位图各种格式。

DimClpFmt,Msg'声明变量。

OnErrorResumeNext'设置错误处理。

IfClipboard.GetFormat(vbCFText)ThenClpFmt=ClpFmt+1

IfClipboard.GetFormat(vbCFBitmap)ThenClpFmt=ClpFmt+2

IfClipboard.GetFormat(vbCFDIB)ThenClpFmt=ClpFmt+4

IfClipboard.GetFormat(vbCFRTF)ThenClpFmt=ClpFmt+8

SelectCaseClpFmt

Case1

Msg="TheClipboardcontainsonlytext."

Case2,4,6

Msg="TheClipboardcontainsonlyabitmap."

Case3,5,7

Msg="TheClipboardcontainstextandabitmap."

Case8,9

Msg="TheClipboardcontainsonlyrichtext."

CaseElse

Msg="ThereisnothingontheClipboard."

EndSelect

MsgBoxMsg'显示信息。

EndSub

【[js]javascript与剪贴板交互】相关文章:

sqlserver 数据类型转换小实验

T-SQL入門攻略之查看数据库对象

全文检索技术 sql server

sql2005 安装教程 图文

SQL Server压缩日志及数据库文件大小

SQL Server 2008商业智能详解

SQL2008 附加数据库提示5120错误解决方法

Sqlserver2005日志文件太大如何减小

SQL优化一例

SqlServer 2005 T-SQL Query 学习笔记(3)

精品推荐
分类导航