delphi 读取剪粘板内的html格式数据
根据剪贴板的原理,在获取剪贴板内容之前,必须指定要获取内容的格式。由于剪贴板中的数据可能存在多种格式,所以有必要对剪贴板的格式类型先做一些了解。W写下了以下的测试代码:
procedure TForm1.Button3Click(Sender: TObject);
var
i: integer;
Buffer: PChar;
s: string;
begin
Memo1.Lines.Clear; //增加了一个Memo控件来跟踪数据
with TClipboard.Create do //利用TClipboard追踪剪贴板
begin
GetMem(Buffer, 20);
for i:=0 to FormatCount - 1 do
begin
GetClipboardFormatName(Formats[i], Buffer, 20);
s := StrPas(Buffer);
Memo1.Lines.Add(Format('%s:%d', [s, Formats[i]]));
end;
FreeMem(Buffer);
Free;
end;
end;
点击Button3,在Memo1文本框中显示出以下的内容:
DataObject:49161
Object Descriptor:49166
Rich Text Format:49312
HTML Format:49394
HTML Format:14
HTML Format:3
PNG:49672
GIF:49536
JFIF:49538
……
很明显,第4行的“HTML Format:49394”应该就是HTML编辑器真正需要的格式。由于“HTML Format”并不是剪贴板默认支持的格式,所以W需要使用API函数RegisterClipboardFormat先进行注册。
procedure TForm1.Button4Click(Sender: TObject);
var
s: string;
hMem: DWORD;
CF_HTML: DWORD; // 声明一个CF_HTML剪贴板格式
txtPtr: PChar;
begin
CF_HTML := RegisterClipboardFormat('HTML Format'); //注册HTML Format格式
with TClipboard.Create do
begin
hMem := GetAsHandle(CF_HTML);
txtPtr := GlobalLock(hMem);
s := StrPas(txtPtr);
GlobalUnlock(hMem);
Memo1.Lines.Add(UF8Decode(s));
Free;
end;
end;
单击Button4就可以在memo1中看到真定html格式文本。
相关文档:
原文地址:http://aspalliance.com/1092_Rich_Text_Editor_Part_I
[原文源码下载]
开发一个自己的HTML在线编辑器(一)
摘要
在本文中,Haissam Abdul Malak将给大家详细介绍如何使用javascript开发一个HTML在线编辑器,它可以应用于web应用程序中,特别是论坛,社区和博客。这个编辑器支持基于XHTML创建文本的功能。
......
类的事件
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TMyEvent = procedure of object; //不带参数的过程
TMyEventExt = procedure(AName: string) of object; //带参数的过程
TForm1 = class(TForm)
......
特殊符号
命名实体
十进制编码
特殊符号
命名实体
十进制编码
特殊符号
命名实体
十进制编码
Α
Α
Α
Β
Β
Β
Γ
Γ
Γ
Δ
Δ
Δ
Ε
Ε
Ε
Ζ
Ζ
Ζ ......
http://www.w3school.com.cn/htmldom/met_table_deleterow.asp
定义和用法
deleteRow() 方法用于从表格删除指定位置的行。
语法
tableObject.deleteRow(index)
说明
参数 index 指定了要删除的行在表中的位置。行的编码顺序就是他们在文档源代码中出现的顺序。<thead> 和 <tfoot> 中的行与表中其它行一起 ......