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

📄 pictures.pas

📁 InfoPower_Studio 2007 v5.0.1.3 banben
💻 PAS
字号:
unit Pictures;

interface

uses
  SysUtils, WinTypes, WinProcs, Messages, Classes, Graphics, Controls,
  Forms, Dialogs, Wwdbspin, StdCtrls, Mask, Wwdbedit, TabNotBk, DB,
  DBTables, Wwtable, Wwdatsrc, ExtCtrls, DBCtrls, ComCtrls, wwriched;

type
  TPictureForm = class(TForm)
    wwTable1: TwwTable;
    wwDataSource1: TwwDataSource;
    wwTable1CustomerNo: TIntegerField;
    wwTable1Buyer: TStringField;
    wwTable1CompanyName: TStringField;
    wwTable1FirstName: TStringField;
    wwTable1LastName: TStringField;
    wwTable1Street: TStringField;
    wwTable1City: TStringField;
    wwTable1State: TStringField;
    wwTable1Zip: TStringField;
    wwTable1FirstContactDate: TDateField;
    wwTable1PhoneNumber: TStringField;
    wwTable1Information: TMemoField;
    wwTable1RequestedDemo: TStringField;
    wwTable1Logical: TBooleanField;
    wwTable2: TwwTable;
    Bevel1: TBevel;
    PictureLabel: TLabel;
    PageControl1: TPageControl;
    TabSheet1: TTabSheet;
    TabSheet2: TTabSheet;
    Label4: TLabel;
    Label7: TLabel;
    CapitalizedWordsEdit: TwwDBEdit;
    PhoneEdit: TwwDBEdit;
    Label3: TLabel;
    ZipEdit: TwwDBEdit;
    Label6: TLabel;
    CapitalFirstEdit: TwwDBEdit;
    Label5: TLabel;
    TimeStampEdit: TwwDBEdit;
    ColorEdit: TwwDBEdit;
    Label1: TLabel;
    ResetButton: TButton;
    AutoFillCheckbox: TCheckBox;
    Zip_DBEdit: TwwDBEdit;
    Label2: TLabel;
    Label8: TLabel;
    DateDBEdit: TwwDBSpinEdit;
    PhonDBEdit: TwwDBEdit;
    Label9: TLabel;
    AutoFillBound: TCheckBox;
    DBNavigator1: TDBNavigator;
    RadioGroup1: TRadioGroup;
    wwDBRichEdit1: TwwDBRichEdit;
    TabSheet3: TTabSheet;
    Label10: TLabel;
    wwDBEdit1: TwwDBEdit;
    Label11: TLabel;
    wwDBEdit2: TwwDBEdit;
    Label12: TLabel;
    wwDBEdit3: TwwDBEdit;
    wwDBEdit4: TwwDBEdit;
    Label13: TLabel;
    procedure ResetButtonClick(Sender: TObject);
    procedure RadioGroup1Click(Sender: TObject);
    procedure FormShow(Sender: TObject);
    procedure wwEditsEnter(Sender: TObject);
    procedure wwEditsExit(Sender: TObject);
    procedure ResetButtonEnter(Sender: TObject);
    procedure AutoFillCheckboxClick(Sender: TObject);
    procedure EditCheckValue(Sender: TObject;
      PassesPictureTest: Boolean);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  PictureForm: TPictureForm;

implementation

{$R *.DFM}

procedure TPictureForm.ResetButtonClick(Sender: TObject);
var
  i : integer;
begin
  for i := 0 to ComponentCount - 1 do
    if (Components[i] is TwwDBEdit) and
      ((Components[i] as TwwDBEdit).DataSource = nil) then
      (Components[i] as TwwDBEdit).clear;
end;

procedure TPictureForm.RadioGroup1Click(Sender: TObject);
var i : integer;
    yesno : boolean;
begin
  if RadioGroup1.Itemindex = 0 then yesno := True else yesno := False;
  for i := 0 to ComponentCount - 1 do
  begin
     if Components[i] is TwwDBCustomEdit then with TwwDBCustomEdit(Components[i]) do
        if (DataSource <> nil) then UsePictureMask := yesno
  end;
end;

procedure TPictureForm.FormShow(Sender: TObject);
var
  MyComponent: TwwDBCustomEdit;
  i : integer;
  MyLabel : TLabel;

begin

  if wwtable2.indexName <> 'iMask' then wwtable2.indexName:='iMask';
  for i := 0 to ComponentCount - 1 do
  begin
    if components[i] is TwwDBCustomEdit then
    begin
      MyComponent := Components[i] as TwwDBCustomEdit;
      if wwTable2.FindKey([MyComponent.Picture.PictureMask]) then
         MyComponent.Hint := wwTable2.FieldByName('Desc').AsString;
    end
    else if (components[i] is TLabel) and ((components[i] as TLabel).Name[1] in ['Z', 'D', 'I']) then
    begin
      MyLabel := components[i] as TLabel;
      MyComponent:= FindComponent(Copy(MyLabel.Name, 1, 4) + 'DBEdit') as TwwDBCustomEdit;
      MyLabel.Caption := MyComponent.Picture.PictureMask;
    end;
  end;

end;

procedure TPictureForm.wwEditsEnter(Sender: TObject);
begin
  PictureLabel.Caption := 'Picture: ' + (Sender as TwwDBCustomEdit).Picture.PictureMask;
end;

procedure TPictureForm.wwEditsExit(Sender: TObject);
begin
  PictureLabel.Caption := '';
end;

procedure TPictureForm.ResetButtonEnter(Sender: TObject);
begin
  PictureLabel.Caption := 'Clear all the Edit Boxes of content';
end;

procedure TPictureForm.AutoFillCheckboxClick(Sender: TObject);
var i: integer;
begin
  for i := 0 to ComponentCount - 1 do
  begin
     if Components[i] is TwwDBCustomEdit then with TwwDBCustomEdit(Components[i]) do
        if (PageControl1.ActivePage=TabSheet2) xor (DataSource = nil) then { Control is on current tab page }
           Picture.AutoFill := (Sender as TCheckBox).Checked;
  end;
end;


{ Show control in yellow during editing when the edited value does not pass the
  picture mask test }
procedure TPictureForm.EditCheckValue(Sender: TObject;
  PassesPictureTest: Boolean);
begin
exit;
  if PassesPictureTest then
     (Sender as TwwDBCustomEdit).Color:= clWhite
  else (Sender as TwwDBCustomEdit).Color:= clYellow
end;

end.

⌨️ 快捷键说明

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