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

📄 cmoneyblobed.pas

📁 Delphi功能强的DBGRID构件,支持钱币网格,从DBGRIDEH中继承.比速达的网格构件功能更强大.
💻 PAS
字号:
unit CMoneyBlobEd;

interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
  ImgList, ComCtrls, ToolWin, StdCtrls, DBCtrls, Clipbrd;

type
  TfrmBlobEditor = class(TForm)
    ToolBar1: TToolBar;
    tbtnOk: TToolButton;
    tbtnCancel: TToolButton;
    ToolButton3: TToolButton;
    tbtnOpen: TToolButton;
    tbtnSave: TToolButton;
    ToolButton6: TToolButton;
    tbtnCut: TToolButton;
    tbtnPaste: TToolButton;
    tbtnCopy: TToolButton;
    ImageList1: TImageList;
    dbmMemo: TDBMemo;
    dbiGraphic: TDBImage;
    ToolButton10: TToolButton;
    ToolButton1: TToolButton;
    OpenDialog1: TOpenDialog;
    SaveDialog1: TSaveDialog;
    procedure tbtnOkClick(Sender: TObject);
    procedure tbtnCancelClick(Sender: TObject);
    procedure tbtnOpenClick(Sender: TObject);
    procedure tbtnSaveClick(Sender: TObject);
    procedure tbtnCutClick(Sender: TObject);
    procedure tbtnCopyClick(Sender: TObject);
    procedure tbtnPasteClick(Sender: TObject);
    procedure FormShow(Sender: TObject);
  private
    procedure CheckClipboard;
  public
  end;

var
  frmBlobEditor: TfrmBlobEditor;

implementation

uses CMoneyDBGrids;

{$R *.DFM}

procedure TfrmBlobEditor.CheckClipboard;
var
  lFormat: Word;
begin
  if dbmMemo.Showing then
    lFormat := CF_TEXT
  else
    lFormat := CF_BITMAP;
  if Clipboard.HasFormat(lFormat) then
    tbtnPaste.Enabled := True
  else
    tbtnPaste.Enabled := False;
end;

procedure TfrmBlobEditor.tbtnOkClick(Sender: TObject);
begin
  ModalResult := mrOk;
end;

procedure TfrmBlobEditor.tbtnCancelClick(Sender: TObject);
begin
  ModalResult := mrCancel;
end;

procedure TfrmBlobEditor.tbtnOpenClick(Sender: TObject);
begin
  with OpenDialog1 do
    begin
      FileName := ExtractFilePath(Application.ExeName);
      if dbmMemo.Showing then
        begin
          Filter := 'Text files (*.txt)|*.txt|All files (*.*)|*.*';
          FileName := FileName + '*.txt';
          if Execute then
            dbmMemo.Lines.LoadFromFile(FileName);
        end
      else
        begin
          Filter := 'Bitmaps (*.bmp)|*.txt|All files (*.*)|*.*';
          FileName := FileName + '*.bmp';
          if Execute then
            dbiGraphic.Picture.LoadFromFile(FileName);
        end;
    end;
end;

procedure TfrmBlobEditor.tbtnSaveClick(Sender: TObject);
begin
  with SaveDialog1 do
    begin
      FileName := ExtractFilePath(Application.ExeName);
      if dbmMemo.Showing then
        begin
          Filter := 'Text files (*.txt)|*.txt|All files (*.*)|*.*';
          FileName := FileName + 'Demo.txt';
          if Execute then
            dbmMemo.Lines.SaveToFile(FileName);
        end
      else
        begin
          Filter := 'Bitmaps (*.bmp)|*.txt|All files (*.*)|*.*';
          FileName := FileName + 'Demo.bmp';
          if Execute then
            dbiGraphic.Picture.SaveToFile(FileName);
        end;
    end;
end;

procedure TfrmBlobEditor.tbtnCutClick(Sender: TObject);
begin
  if dbmMemo.Showing then
    dbmMemo.CutToClipboard
  else
    dbiGraphic.CutToClipboard;
  CheckClipboard;
end;

procedure TfrmBlobEditor.tbtnCopyClick(Sender: TObject);
begin
  if dbmMemo.Showing then
    dbmMemo.CopyToClipboard
  else
    dbiGraphic.CopyToClipboard;
  CheckClipboard;
end;

procedure TfrmBlobEditor.tbtnPasteClick(Sender: TObject);
begin
  if dbmMemo.Showing then
    dbmMemo.PasteFromClipboard
  else
    dbiGraphic.PasteFromClipboard;
end;

procedure TfrmBlobEditor.FormShow(Sender: TObject);
begin
  CheckClipboard;
end;

end.

⌨️ 快捷键说明

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