⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 abftrayicondemomain.pas

📁 一个非常好的OUTLOOK EXPRESS接口控件
💻 PAS
字号:
{*******************************************************************************

  abfTrayIcon component DEMO. Main form unit.

  Copyright (c) 2000 ABF software, Inc.
  All rights reserved.

*******************************************************************************}
unit abfTrayIconDemoMain;

{$I abf.inc}

interface

uses
{$IfDef D4}
  ImgList,
{$EndIf D4}
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  StdCtrls, Buttons, ExtCtrls, Menus, ComCtrls,
  abfComponents;

type

{******************************************************************************}
{ TfrmMain }

  TfrmMain = class(TForm)
    lbBigTitle: TLabel;
    lbSmallTitle: TLabel;

    lbIconHint: TLabel;
      edIconHint: TEdit;
    btnLoadIcon: TSpeedButton;

    chbEnabled: TCheckBox;
    chbCycleIcons: TCheckBox;
    lbInteval: TLabel;
      edInterval: TEdit;
        udInterval: TUpDown;
    chbMinimizeToTray: TCheckBox;
    chbPopupByLeft: TCheckBox;
    chbShowHint: TCheckBox;

    btnShowIcon: TBitBtn;
    btnHideIcon: TBitBtn;
    btnAbout: TBitBtn;

    abfTrayIcon: TabfTrayIcon;
    pmIcon: TPopupMenu;
      miHideIcon: TMenuItem;
        N1: TMenuItem;
      miHideApp: TMenuItem;
      miShowApp: TMenuItem;
        N2: TMenuItem;
      miAbout: TMenuItem;
      miExit: TMenuItem;
    dlgLoadIcon: TOpenDialog;
    imgsIcons: TImageList;
    
    procedure FormCreate(Sender: TObject);
    procedure btnShowIconClick(Sender: TObject);
    procedure btnHideIconClick(Sender: TObject);
    procedure btnAboutClick(Sender: TObject);
    procedure btnLoadIconClick(Sender: TObject);
    procedure edIconHintChange(Sender: TObject);
    procedure miExitClick(Sender: TObject);
    procedure miHideAppClick(Sender: TObject);
    procedure miShowAppClick(Sender: TObject);
    procedure chbEnabledClick(Sender: TObject);
    procedure chbCycleIconsClick(Sender: TObject);
    procedure edIntervalChange(Sender: TObject);
    procedure chbMinimizeToTrayClick(Sender: TObject);
    procedure chbPopupByLeftClick(Sender: TObject);
    procedure chbShowHintClick(Sender: TObject);
  private
    procedure UpdateProperties;
  end;

var
  frmMain: TfrmMain;

{******************************************************************************}
implementation
{******************************************************************************}
{$R *.DFM}
uses
  abfAboutComponent;

{******************************************************************************}
{ TfrmMain }

procedure TfrmMain.UpdateProperties;
begin
  with abfTrayIcon do
  begin
    edIconHint.Text := Hint;
    chbEnabled.Checked := Enabled;
    chbCycleIcons.Checked := CycleIcons;
    udInterval.Position := CycleInterval;
    chbMinimizeToTray.Checked := MinimizeToTray;
    chbPopupByLeft.Checked := PopupByLeft;
    chbShowHint.Checked := ShowHint;
    UpDate;
  end;
end;

{--------------------------------------}

procedure TfrmMain.FormCreate(Sender: TObject);
begin
  UpdateProperties;
  abfTrayIcon.Show;
end;

{--------------------------------------}

procedure TfrmMain.btnShowIconClick(Sender: TObject);
begin
  abfTrayIcon.Show;
end;

{--------------------------------------}

procedure TfrmMain.btnHideIconClick(Sender: TObject);
begin
  abfTrayIcon.ShowMainForm;
  abfTrayIcon.Hide;
end;

{--------------------------------------}

procedure TfrmMain.btnAboutClick(Sender: TObject);
begin
  abfComponentAbout(abfTrayIcon);
end;

{--------------------------------------}

procedure TfrmMain.btnLoadIconClick(Sender: TObject);
begin
  if not dlgLoadIcon.Execute then Exit;
  abfTrayIcon.CycleIcons := False; //Stop the icons cycling
  abfTrayIcon.Icon.LoadFromFile(dlgLoadIcon.FileName);
  UpdateProperties;
end;

{--------------------------------------}

procedure TfrmMain.edIconHintChange(Sender: TObject);
begin
  abfTrayIcon.Hint := TEdit(Sender).Text;
end;

{--------------------------------------}

procedure TfrmMain.miHideAppClick(Sender: TObject);
begin
  abfTrayIcon.HideMainForm;
end;

{--------------------------------------}

procedure TfrmMain.miShowAppClick(Sender: TObject);
begin
  abfTrayIcon.ShowMainForm;
end;

{--------------------------------------}

procedure TfrmMain.miExitClick(Sender: TObject);
begin
  Close;
end;

{--------------------------------------}

procedure TfrmMain.chbEnabledClick(Sender: TObject);
begin
  abfTrayIcon.Enabled := TCheckBox(Sender).Checked;
end;

{--------------------------------------}

procedure TfrmMain.chbCycleIconsClick(Sender: TObject);
begin
  abfTrayIcon.CycleIcons := TCheckBox(Sender).Checked;
end;

{--------------------------------------}

procedure TfrmMain.edIntervalChange(Sender: TObject);
begin
  abfTrayIcon.CycleInterval := StrToIntDef(TEdit(Sender).Text, 200);
  UpdateProperties;
end;

{--------------------------------------}

procedure TfrmMain.chbMinimizeToTrayClick(Sender: TObject);
begin
  abfTrayIcon.MinimizeToTray := TCheckBox(Sender).Checked;
end;

{--------------------------------------}

procedure TfrmMain.chbPopupByLeftClick(Sender: TObject);
begin
  abfTrayIcon.PopupByLeft := TCheckBox(Sender).Checked;
end;

{--------------------------------------}

procedure TfrmMain.chbShowHintClick(Sender: TObject);
begin
  abfTrayIcon.ShowHint := TCheckBox(Sender).Checked;
end;

{--------------------------------------}

end{unit abfTrayIconDemoMain}.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -