TIpHtmlPanel

From Free Pascal wiki
Jump to navigationJump to search

English (en) français (fr) polski (pl) русский (ru)

The TIpHtmlPanel tiphtmlpanel.png component is the display part of the Turbopower Internet Pro package that delivers native HTML-access. The component is available from the IPro tab of the Component Palette.

property ALinkColor;
property AllowTextSelect;
property DataProvider;
property FixedTypeface;
property DefaultTypeFace;
property DefaultFontSize;
property FactBAParag;
property FlagErrors;
property LinkColor;
property PrintSettings;
property MarginHeight;
property MarginWidth;
property ShowHints;
property TabOrder;
property TabStop;
property TextColor;
property Visible;
property VLinkColor;
property WantTabs;
property OnControlClick;
property OnControlClick2;
property OnControlChange;
property OnControlEditingDone;
property OnControlCreate;
property OnCurElementChange;
property OnDocumentOpen;
property OnHotChange;
property OnHotClick;                  

A TIpHtmlPanel gets its contents from a TIpHTML descendant:


In the example below is a TSynEdit used with a TSynHTMLSyn. The results are displayed as formatted HTML using a TIpHtmlPanel.

component-TSynEdit+TIpHtmlPanel.png

unit TipHtmlTest;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, IpHtml, SynHighlighterHTML, SynHighlighterAny,
  SynEdit, Forms, Controls, Graphics, Dialogs, ExtCtrls, StdCtrls;

const
  htmfile = 'tiphtmltestdata.html';

type
  TTipHtmlForm = class(TForm)
    IpHtmlPanel1: TIpHtmlPanel;
    Splitter1: TSplitter;
    Memo1: TSynEdit;
    SynHTMLSyn1: TSynHTMLSyn;
    procedure FormClose(Sender: TObject; var CloseAction: TCloseAction);
    procedure FormCreate(Sender: TObject);
    procedure MemoChange(Sender: TObject);
  protected
  public
    procedure ShowText( const txt: string );
  end;

var
  TipHtmlForm: TTipHtmlForm;

implementation

{$R *.lfm}

procedure TTipHtmlForm.FormCreate(Sender: TObject);
begin
  if FileExists( htmfile ) then
    Memo1.Lines.LoadFromFile( htmfile )
  else
    Memo1.Lines.Text := '<html><head><title>tipmemo</title></head><body><h1>tipmemo</h1>See <b>' +htmfile + '</b></body></html>';
  MemoChange( nil );
end;


procedure TTipHtmlForm.FormClose(Sender: TObject; var CloseAction: TCloseAction);
begin
  Memo1.Lines.SaveToFile( htmfile );
end;


procedure TTipHtmlForm.MemoChange(Sender: TObject);
begin
  ShowText( Memo1.Lines.Text );
end;


procedure TTipHtmlForm.ShowText( const txt: string );
var
  fs: TStringStream;
  pHTML: TIpHtml;
begin
  try
    fs := TStringStream.Create( txt );
    try
      pHTML:=TIpHtml.Create; // Beware: Will be freed automatically by IpHtmlPanel1
      pHTML.LoadFromStream(fs);
    finally
      fs.Free;
    end;
    IpHtmlPanel1.SetHtml( pHTML );
    Caption := IpHtmlPanel1.Title;
  except
    on E: Exception do begin
      MessageDlg( 'Error: '+E.Message, mtError, [mbCancel], 0 );
    end;
  end;
end;

component-TSynEdit+TIpHtmlPanel-r.png

See also


LCL Components
Component Tab Components
Standard TMainMenu • TPopupMenu • TButton • TLabel • TEdit • TMemo • TToggleBox • TCheckBox • TRadioButton • TListBox • TComboBox • TScrollBar • TGroupBox • TRadioGroup • TCheckGroup • TPanel • TFrame • TActionList
Additional TBitBtn • TSpeedButton • TStaticText • TImage • TShape • TBevel • TPaintBox • TNotebook • TLabeledEdit • TSplitter • TTrayIcon • TControlBar • TFlowPanel • TMaskEdit • TCheckListBox • TScrollBox • TApplicationProperties • TStringGrid • TDrawGrid • TPairSplitter • TColorBox • TColorListBox • TValueListEditor
Common Controls TTrackBar • TProgressBar • TTreeView • TListView • TStatusBar • TToolBar • TCoolBar • TUpDown • TPageControl • TTabControl • THeaderControl • TImageList • TPopupNotifier • TDateTimePicker
Dialogs TOpenDialog • TSaveDialog • TSelectDirectoryDialog • TColorDialog • TFontDialog • TFindDialog • TReplaceDialog • TTaskDialog • TOpenPictureDialog • TSavePictureDialog • TCalendarDialog • TCalculatorDialog • TPrinterSetupDialog • TPrintDialog • TPageSetupDialog
Data Controls TDBNavigator • TDBText • TDBEdit • TDBMemo • TDBImage • TDBListBox • TDBLookupListBox • TDBComboBox • TDBLookupComboBox • TDBCheckBox • TDBRadioGroup • TDBCalendar • TDBGroupBox • TDBGrid • TDBDateTimePicker
Data Access TDataSource • TCSVDataSet • TSdfDataSet • TBufDataset • TFixedFormatDataSet • TDbf • TMemDataset
System TTimer • TIdleTimer • TLazComponentQueue • THTMLHelpDatabase • THTMLBrowserHelpViewer • TAsyncProcess • TProcessUTF8 • TProcess • TSimpleIPCClient • TSimpleIPCServer • TXMLConfig • TEventLog • TServiceManager • TCHMHelpDatabase • TLHelpConnector
Misc TColorButton • TSpinEdit • TFloatSpinEdit • TArrow • TCalendar • TEditButton • TFileNameEdit • TDirectoryEdit • TDateEdit • TTimeEdit • TCalcEdit • TFileListBox • TFilterComboBox • TComboBoxEx • TCheckComboBox • TButtonPanel • TShellTreeView • TShellListView • TXMLPropStorage • TINIPropStorage • TJSONPropStorage • TIDEDialogLayoutStorage • TMRUManager • TStrHolder
LazControls TCheckBoxThemed • TDividerBevel • TExtendedNotebook • TListFilterEdit • TListViewFilterEdit • TLvlGraphControl • TShortPathEdit • TSpinEditEx • TFloatSpinEditEx • TTreeFilterEdit • TExtendedTabControl •
RTTI TTIEdit • TTIComboBox • TTIButton • TTICheckBox • TTILabel • TTIGroupBox • TTIRadioGroup • TTICheckGroup • TTICheckListBox • TTIListBox • TTIMemo • TTICalendar • TTIImage • TTIFloatSpinEdit • TTISpinEdit • TTITrackBar • TTIProgressBar • TTIMaskEdit • TTIColorButton • TMultiPropertyLink • TTIPropertyGrid • TTIGrid
SQLdb TSQLQuery • TSQLTransaction • TSQLScript • TSQLConnector • TMSSQLConnection • TSybaseConnection • TPQConnection • TPQTEventMonitor • TOracleConnection • TODBCConnection • TMySQL40Connection • TMySQL41Connection • TMySQL50Connection • TMySQL51Connection • TMySQL55Connection • TMySQL56Connection • TMySQL57Connection • TSQLite3Connection • TIBConnection • TFBAdmin • TFBEventMonitor • TSQLDBLibraryLoader
Pascal Script TPSScript • TPSScriptDebugger • TPSDllPlugin • TPSImport_Classes • TPSImport_DateUtils • TPSImport_ComObj • TPSImport_DB • TPSImport_Forms • TPSImport_Controls • TPSImport_StdCtrls • TPSCustomPlugin
SynEdit TSynEdit • TSynCompletion • TSynAutoComplete • TSynMacroRecorder • TSynExporterHTML • TSynPluginSyncroEdit • TSynPasSyn • TSynFreePascalSyn • TSynCppSyn • TSynJavaSyn • TSynPerlSyn • TSynHTMLSyn • TSynXMLSyn • TSynLFMSyn • TSynDiffSyn • TSynUNIXShellScriptSyn • TSynCssSyn • TSynPHPSyn • TSynTeXSyn • TSynSQLSyn • TSynPythonSyn • TSynVBSyn • TSynAnySyn • TSynMultiSyn • TSynBatSyn • TSynIniSyn • TSynPoSyn
Chart TChart • TListChartSource • TRandomChartSource • TUserDefinedChartSource • TCalculatedChartSource • TDbChartSource • TChartToolset • TChartAxisTransformations • TChartStyles • TChartLegendPanel • TChartNavScrollBar • TChartNavPanel • TIntervalChartSource • TDateTimeIntervalChartSource • TChartListBox • TChartExtentLink • TChartImageList
IPro TIpFileDataProvider • TIpHtmlDataProvider • TIpHttpDataProvider • TIpHtmlPanel
Virtual Controls TVirtualDrawTree • TVirtualStringTree • TVTHeaderPopupMenu