whats new ¦  programming tips ¦  indy articles ¦  intraweb articles ¦  informations ¦  links ¦  interviews
 misc ¦  tutorials ¦  Add&Win Game

Tips (1541)

Database (90)
Files (137)
Forms (107)
Graphic (114)
IDE (21)
Indy (5)
Internet / LAN (130)
IntraWeb (0)
Math (76)
Misc (126)
Multimedia (45)
Objects/
ActiveX (51)

OpenTools API (3)
Printing (35)
Strings (83)
System (266)
VCL (242)

Top15

Tips sort by
component


Search Tip

Add new Tip

Add&Win Game

Advertising

34 Visitors Online


 
...change the Borderstyle/ BorderColor of a TWebbrowser?
Autor: Thomas Stutz
[ Print tip ]  

Tip Rating (29):  
     




uses
  
MSHTML;

procedure WB_SetBorderColor(Sender: TObject; BorderColor: String);
{
  BorderColor: Can be specified in HTML pages in two ways.
               1) by using a color name (red, green, gold, firebrick, ...)
               2) or by using numbers to denote an RGB color value. (#9400D3, #00CED1,...)

  See: http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/properties/borderstyle.asp
}

var
  
Document : IHTMLDocument2;
  Element : IHTMLElement;
begin
  
Document := TWebBrowser(Sender).Document as IHTMLDocument2;
  if Assigned(Document) then
  begin
    
Element := Document.Body;
    if Element <> nil then
    begin
      
Element.Style.BorderColor := BorderColor;
    end;
  end;
end;

procedure WB_SetBorderStyle(Sender: TObject; BorderStyle: String);
{
  BorderStyle values:

  'none'         No border is drawn
  'dotted'       Border is a dotted line. (as of IE 5.5)
  'dashed'       Border is a dashed line. (as of IE 5.5)
  'solid'        Border is a solid line.
  'double'       Border is a double line
  'groove'       3-D groove is drawn
  'ridge'        3-D ridge is drawn
  'inset'        3-D inset is drawn
  'window-inset' Border is the same as inset, but is surrounded by an additional single line
  'outset'       3-D outset is drawn

  See: http://msdn.microsoft.com/library/default.asp?url=/workshop/author/dhtml/reference/properties/borderstyle.asp
}

var
  
Document : IHTMLDocument2;
  Element : IHTMLElement;
begin
  
Document := TWebBrowser(Sender).Document as IHTMLDocument2;
  if Assigned(Document) then
  begin
    
Element := Document.Body;
    if Element <> nil then
    begin
      
Element.Style.BorderStyle := BorderStyle;
    end;
  end;
end;

procedure WB_Set3DBorderStyle(Sender: TObject; bValue: Boolean);
{
  bValue: True: Show a 3D border style
          False: Show no border
}
var
  
Document : IHTMLDocument2;
  Element : IHTMLElement;
  StrBorderStyle: string;
begin
  
Document := TWebBrowser(Sender).Document as IHTMLDocument2;
  if Assigned(Document) then
  begin
    
Element := Document.Body;
    if Element <> nil then
    begin
      case 
BValue of
        
False: StrBorderStyle := 'none';
        True: StrBorderStyle := '';
      end;
      Element.Style.BorderStyle := StrBorderStyle;
    end;
  end;
end;



procedure TForm1.WebBrowser1NavigateComplete2(Sender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
// Put this code in the OnDocumentComplete event as well
begin
  
// Examples:
  // Show no border
  
WB_Set3DBorderStyle(Sender, False);
  // Draw a double line border
  
WB_SetBorderStyle(Sender, 'double');
  // Set a border color
  
WB_SetBorderColor(Sender, '#6495ED');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  
Webbrowser1.Navigate('www.SwissDelphiCenter.ch');
end;

 

Rate this tip:

poor
very good


Copyright © by SwissDelphiCenter.ch
All trademarks are the sole property of their respective owners