文档章节

使用 TWebBrowser 编辑网页

涂孟超
 涂孟超
发布于 2014/09/26 15:35
字数 276
阅读 5
收藏 0

本例效果图:



代码文件:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, SHDocVw, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    WebBrowser1: TWebBrowser;
    Panel1: TPanel;
    Button1: TButton;
    CheckBox1: TCheckBox;
    procedure FormCreate(Sender: TObject);
    procedure CheckBox1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(WebBrowser1.OleObject.document.body.innerText);
end;

procedure TForm1.CheckBox1Click(Sender: TObject);
begin
  {这里是让整个页面可编辑, 也可以单独编辑某个元素}
  WebBrowser1.OleObject.document.body.contentEditable := CheckBox1.Checked;
  {有些浏览器需要这样设置: document.designMode = "On";}
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  Panel1.Align := alTop;
  CheckBox1.Anchors := [akTop, akRight];
  Button1.Anchors := CheckBox1.Anchors;
  CheckBox1.Caption := '编辑';
  Button1.Caption := '显示网页文本';

  WebBrowser1.Align := alClient;
  WebBrowser1.Navigate('http://www.cnblogs.com/del/archive/2009/04/16/1437417.html');
end;

end.

 
 
 
 
 

 

 

  

窗体文件:
object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 385
  ClientWidth = 632
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  Position = poScreenCenter
  OnCreate = FormCreate
  PixelsPerInch = 96
  TextHeight = 13
  object WebBrowser1: TWebBrowser
    Left = 8
    Top = 48
    Width = 563
    Height = 321
    TabOrder = 0
    ControlData = {
      4C000000303A00002D2100000000000000000000000000000000000000000000
      000000004C000000000000000000000001000000E0D057007335CF11AE690800
      2B2E126208000000000000004C0000000114020000000000C000000000000046
      8000000000000000000000000000000000000000000000000000000000000000
      00000000000000000100000000000000000000000000000000000000}
  end
  object Panel1: TPanel
    Left = 0
    Top = 1
    Width = 633
    Height = 32
    Caption = 'Panel1'
    TabOrder = 1
    object Button1: TButton
      Left = 440
      Top = 4
      Width = 99
      Height = 25
      Caption = 'Button1'
      TabOrder = 0
      OnClick = Button1Click
    end
    object CheckBox1: TCheckBox
      Left = 552
      Top = 8
      Width = 73
      Height = 17
      Caption = 'CheckBox1'
      TabOrder = 1
      OnClick = CheckBox1Click
    end
  end
end

 
 
 
 
 

 

 

  

本文转载自:http://www.cnblogs.com/del/archive/2009/04/17/1437951.html

共有 人打赏支持
涂孟超
粉丝 12
博文 2011
码字总数 14107
作品 0
深圳
程序员
私信 提问
delphi中Webbrowser

1.获得网页中变量值 htm中<script> var currID=123</script> 程序中可以这么调用 id := Form1.WebBrowser1.OleObject.Document.script.currID 值得说明的是,变量可以是javascript定义的,也可......

任远
2015/05/08
0
0
网页设计基础

网页设计基础 一、网站的概述 1、 网页与网站 浏览网页时在浏览器中看到的一个个页面就是网页,而多个相关的网页的集合就构成了一个网站。 举例:(搜狐网)(百度网)(优酷网)等等。 2、 浏览网...

MyDear宸
2017/05/12
0
0
TwebBrowser 去掉边框

IHtmlDocument2(WebBrowser1.Document).body.style.overflow:= 'hidden'; IHtmlDocument2(WebBrowser1.Document).body.style.borderstyle:= 'none';...

jingshishengxu
2010/11/20
0
0
南漂一卒/iBookmarkLet

iBookmarkLet Web 2.0 时代,各种互联网公司都想靠 网页浏览器 来圈地、圈钱,争相推出自己的原创/马甲浏览器,功能或简或繁,但总有些 实用功能缺这少那…… 而且即便内核相同,扩展插件的 ...

南漂一卒
2014/12/02
0
0
php中使用sqlite,插入和网页展示的问题

网页上编辑包含单引号,直接插入sqlite会出错。 可以使用sqliteescapestring(输入值); //此项会把单引号替换成' 插入数据库 在网页展示时使用strreplace("'", "'", $entry['a']);将'转换成单...

阿采
2016/01/18
38
0

没有更多内容

加载失败,请刷新页面

加载更多

使用JavaScript编写iOS应用业务逻辑

JSAUIKitCocoa使你可以使用JavaScript编写对性能要求不高但可能变动性很大的iOS应用的业务逻辑部分,View组件、需要多线程支持的Model等则直接使用原生对象。 编写方式与React Native相似,但...

neal01
20分钟前
1
0
艺术品区块链溯源防伪平台(连载一)

Netkiller Blockchain 手札 作者正在找工作,联系方式 13113668890 Mr. Neo Chan, 陈景峯(BG7NYT) 中国广东省深圳市望海路半岛城邦三期 518067 +86 13113668890 <netkiller@msn.com> 文档始创...

netkiller-
20分钟前
2
0
0032-如何在CDH启用Kerberos的情况下安装及使用Sentry(二)

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 5.Sentry列权限管理 1.在集群所有节点添加fayson_r用户 [root@ip-172-31-6-148 cdh-shell-bak]# useradd fayson_r[root@i...

Hadoop实操
24分钟前
1
0
Nginx配置中Location的优先级

根据Nginx的官方文档,Location标签一共有四个修饰符,分别是: (1) =:表示完全匹配; (2) ^~:匹配URI的前缀,并且后面的正则表达式不再匹配,如果一个URI同时满足两个规则的话,匹配最长的规...

cloes
昨天
1
0
Xcode 10 Archive 卡死问题

前段时间贪新鲜更新了xcode 10,发现就是自己没事找事后悔啊........ 首先是 libstdc++.6.0.9.tbd 已不被使用,以前的项目是一顿报错!!!一个个改也不是办法还有一些第三方的用到只好把lib...

壹峰
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部