设置/获取 字体属性
  1. 名称
  2. 大小
  3. 粗体
  4. 斜体
  5. 下划线
  6. 删除线
  7. 颜色1
  8. 颜色2
 
uses MSHTML;
 
//设置


//------------------------------------------------------------------------------
procedure WB_SetFontName();
begin
  (Form1.webbrowser1.Document as
IHTMLDocument2).execCommand('FontName', False,
Form1.cbb_FontNameList.Text);
end;
//------------------------------------------------------------------------------
procedure WB_SetFontSize();
begin
  (Form1.webbrowser1.Document as
IHTMLDocument2).execCommand('FontSize', false,
StrToInt(Form1.cbb_FontSize.Text));
end;
//------------------------------------------------------------------------------
procedure WB_SetBold();
begin
  (Form1.webbrowser1.Document as
IHTMLDocument2).execCommand('Bold', False, 1);
end;
//------------------------------------------------------------------------------
procedure WB_Setstrike();
begin
  (Form1.webbrowser1.Document as
IHTMLDocument2).execCommand('StrikeThrough', False,
1);
end;
//------------------------------------------------------------------------------
procedure WB_SetItalic();
begin
  (Form1.webbrowser1.Document as
IHTMLDocument2).execCommand('Italic', False, 1);
end;
//------------------------------------------------------------------------------
procedure WB_SetUnderline();
begin
  (Form1.webbrowser1.Document as
IHTMLDocument2).execCommand('Underline', False, 1);
end;

//------------------------------------------------------------------------------
//颜色要为 HTML 的颜色格式

procedure
WB_SetForeColor();
begin
  (Form1.WebBrowser1.Document as
IHTMLDocument2).execCommand('ForeColor', False, '#CD0000');
end;
//------------------------------------------------------------------------------
procedure WB_SetBackColor();
begin
  (Form1.WebBrowser1.Document as
IHTMLDocument2).execCommand('BackColor',false, '#8EE5EE');
end;

 
 
 
//获得
//------------------------------------------------------------------------------

//First chance exception at $759E9617.
Exception class EOleException with message '不支持该命令。'. Process Webbrowser.exe
(6472)
function GetFontName():string;
begin
      Result:=(Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandValue('FontName');
end;
//------------------------------------------------------------------------------
function GetFontSize():string;
begin
    Result:=(Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandValue('FontSize');
end;
//------------------------------------------------------------------------------
function GetFontColor():TColor;
begin
      Result:=(Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandValue('ForeColor');
end;
//------------------------------------------------------------------------------
function GetFontBgColor():TColor;
begin
      Result:=(Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandValue('BackColor');
end;
//------------------------------------------------------------------------------
function IsBold():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('Bold');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsItalic():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('Italic');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsUnderline():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('Underline');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsStrikeThrough():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('StrikeThrough');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsSubScript():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('SubScript');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsSuperScript():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('SuperScript');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsJustifyLeft():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('JustifyLeft');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsJustifyCenter():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('JustifyCenter');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsJustifyRight():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('JustifyRight');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsJustifyFull():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('JustifyFull');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsInsertOrderedList():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('InsertOrderedList');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
function IsInsertUnorderedList():Boolean;
Var  bRtn:Boolean;
begin
    bRtn:= (Form1.webbrowser1.Document as
IHTMLDocument2).queryCommandState('InsertUnorderedList');
    if bRtn then
        Result:=True
    else
        Result:=False;
end;
//------------------------------------------------------------------------------
//工具栏感应
 

procedure TForm1.WebBrowser1CommandStateChange(ASender:
TObject;
  Command: Integer; Enable: WordBool);
begin

//------------------------------------------------------------------------------
  if WebBrowser1.ReadyState =READYSTATE_COMPLETE  then
  if GetSelText<>'' then
  begin
      mni_Copy.Enabled:=True;
      btn_Copy.Enabled:=True;
      btn_Cut.Enabled:=True;
      mni_Cut.Enabled:=True;
  end
  else
  begin
       mni_Copy.Enabled:=false;
       btn_Copy.Enabled:=False;
       btn_Cut.Enabled:=False;
       mni_Cut.Enabled:=false;
  end;
  //如果剪切板上没有内容则
  if IsClipboardFormatAvailable(CF_TEXT) then
  begin
     btn_Paste.Enabled:=True;
     mni_Paste.Enabled:=True;
  end
  else
  begin
     btn_Paste.Enabled:=False;
     mni_Paste.Enabled:=False;
  end;

//------------------------------------------------------------------------------

try
  //cbb_FontNameList.Text:=GetFontName();
  cbb_FontNameList.ItemIndex
:=cbb_FontNameList.Items.IndexOf(
GetFontName());
  //cbb_FontSize.Text:=GetFontSize();
   cbb_FontSize.ItemIndex
:=cbb_FontSize.Items.IndexOf(
GetFontSize());
  btn_Bold.Down:=IsBold();
  btn_Italic.Down:=IsItalic();
  btn_Underline.Down:=IsUnderline();
  btn_strikethrough.Down:=IsStrikeThrough();

  btn_SubScript.Down:=IsSubScript();
  btn_SuperScript.Down:=IsSuperScript();

  ToolButton_AlignTwo.Down:=IsJustifyFull();
  ToolButton_AlignLeft.Down:=IsJustifyLeft();
  ToolButton_AlignCenter.Down:=IsJustifyCenter();
  ToolButton_AlignRight.Down:=IsJustifyRight();

  ToolButton_UnoredredList.Down:=IsInsertUnorderedList();
  ToolButton_OrderedList.Down:=IsInsertOrderedList();
  //格式化
except
  Exit;
end;

  case Command of
    CSC_NAVIGATEBACK:
ToolButton_Back.Enabled :=
Enable;    //“后退”按钮
    CSC_NAVIGATEFORWARD:
ToolButton_Forward.Enabled :=
Enable;    //“前进”按钮
    CSC_UPDATECOMMANDS:
ToolButton_Stop.Enabled :=
TWebBrowser(ASender).Busy;  //“停止”按钮
  end;
end;

 
 

delphi 01设置 字体属性的更多相关文章

  1. Delphi: TLabel设置EllipsisPosition属性用...显示过长文本时,以Hint显示其全文本

    仍然是处理多语言中碰到问题. Delphi自2006版以后,TLabel有了EllipsisPosition属性,当长文本超过其大小时,显示以...,如下图: 这样虽然解决显示问题,但很显然,不知道. ...

  2. CSS3中设置字体的抗锯齿或光滑度的属性

    刚刚接触前端开发,对于-webkit-font-smoothing: antialiased; 这个属性不了解.上网查找了一些资料. 总结一下: -webkit-font-smoothing  :  ...

  3. {03--CSS布局设置} 盒模型 二 padding bode margin 标准文档流 块级元素和行内元素 浮动 margin的用法 文本属性和字体属性 超链接导航栏 background 定位 z-index

    03--CSS布局设置 本节目录 一 盒模型 二 padding(内边距) 三 boder(边框) 四 简单认识一下margin(外边距) 五 标准文档流 六 块级元素和行内元素 七 浮动 八 mar ...

  4. 字体属性设置(一):谷歌浏览器12px以下字体的显示;方法和原理

    前言: chrome 谷歌浏览器默认的字体大小为16px:可以通过设置font-size来设置字体大小但是当设置到12px以下的时候字体大小不再改变:对于想设置其他大小的字体就很头疼,本文参考网上的方 ...

  5. JAVA学习绘图颜色及其笔画属性设置字体显示文字

    package com.graphics; import java.awt.*; import java.awt.geom.Rectangle2D; import java.util.Date; im ...

  6. gispro设置标注属性字体样式设置

    为了应对电子地图和卫星影像的底图,标注样式选择比较关键.挑选了黑字白色晕圈效果.记住不是设置字体轮廓. 因为字体宽度(字粗)有限,设置轮廓直接把字体本身的颜色覆盖了

  7. Delphi中Menu设置Images属性后快捷按键下划线被隐藏解决方法

    现象:MainMenu设置Images属性后,看不到快捷按键的下划线,如:新建(&N) 分析:VCL中Menus.pas单元的代码,看到如下语句procedure TMenuItem.Adva ...

  8. Delphi部份函数,命令,属性中文说明

    Abort 函数 引起放弃的意外处理 Abs 函数 绝对值函数 AddExitProc 函数 将一过程添加到运行时库的结束过程表中 Addr 函数 返回指定对象的地址 AdjustLineBreaks ...

  9. python 之 前端开发(CSS三大特性、字体属性、文本属性、背景属性)

    11.38 css三大特性 11.381 继承性 1.定义:给某一个元素设置一些属性,该元素的后代也可以使用,这个我们就称之为继承性​2.注意:    1.只有以color.font-.text-.l ...

随机推荐

  1. 【转】终于解决了Apache乱码问题

    之前开放了一个空间,给网友提供电台节目音频下载.由于多年节目的文件数量甚多,且分类没有特定格式,图省事,没有制作网页提供分类下载,而是直接利用Apache的目录浏览功能,简单直观. 不过,所在的美国服 ...

  2. MyBatis 入门到精通(三) 高级结果映射

    MyBatis的创建基于这样一个思想:数据库并不是您想怎样就怎样的.虽然我们希望所有的数据库遵守第三范式或BCNF(修正的第三范式),但它们不是.如果有一个数据库能够完美映射到所有应用程序,也将是非常 ...

  3. 关于ThinkPHP中Session不能夸模块/控制器使用的问题-网上的答案我做个补充

    1,确保c:/windows目录下有php.ini文件2,修改php.ini中的session.auto_start = 0 为 session.auto_start = 1  //设置自动开启ses ...

  4. SQL Server2005安装配置以及测试

    SQL Server2005有2种版本,一种是集成版的, 一种是2个文件夹形式的.这里使用后者,安装文件夹名字为:SQL Server x86,该文件夹里面有Servers和Tools文件夹以及一些其 ...

  5. SqlServer中输出错误消息

    raiserror('所有参数都不能为空',16,1,@@error)

  6. 线性模型(1):Perceptron Learning Algorithm (PLA)

    此笔记源于台湾大学林轩田老师<机器学习基石><机器学习技法> (一) PLA算法是基本的binary Classification算法. 一个基本的问题是,对于银行,假设我知道 ...

  7. My implementation of AVL tree

    C++实现的avl平衡树 #include <stdlib.h> #include <time.h> #include <string.h> #include &l ...

  8. leetcode@ [316] Remove Duplicate Letters (Stack & Greedy)

    https://leetcode.com/problems/remove-duplicate-letters/ Given a string which contains only lowercase ...

  9. Android 用MediaCodec实现视频硬解码(转)

    本文向你讲述如何用android标准的API (MediaCodec)实现视频的硬件编解码.例程将从摄像头采集视频开始,然后进行H264编码,再解码,然后显示.我将尽量讲得简短而清晰,不展示 那些不相 ...

  10. 集群——LVS理论(转)

    原文:http://caduke.blog.51cto.com/3365689/1544229 当单个服务器性能 不能满足日益增多访问流量时,服务器的扩展策略: Scale Up :向上扩展,提升单个 ...