📄 dlgsignalsettings.pas
字号:
unit DlgSignalSettings;
{******************************************************************************}
{ Abakus VCL }
{ Property-editor to adjust SignalSettings }
{ belongs to all analog indicators }
{ }
{******************************************************************************}
{ e-Mail: support@abaecker.de , Web: http://www.abaecker.com }
{------------------------------------------------------------------------------}
{ (c) Copyright 1998..2001 A.Baecker, All rights Reserved }
{******************************************************************************}
{$I Abks.inc}
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, AbNumEdit, _GClass, Buttons,
{$IFDEF D6} DesignWindows, DesignEditors, DesignIntf, {$ELSE} DsgnIntf, {$ENDIF}
_AbProc;
type
TSignalSettings_Form = class(TForm)
ValueFromSpin: TAbNumSpin;
ValueToSpin: TAbNumSpin;
Label2: TLabel;
DigitalFromSpin: TAbNumSpin;
DigitalToSpin: TAbNumSpin;
Label1: TLabel;
Label3: TLabel;
Label4: TLabel;
Name1Edit: TEdit;
Label5: TLabel;
Name2Edit: TEdit;
Label6: TLabel;
ValueUnitEdit: TEdit;
Label7: TLabel;
ValueFormatEdit: TEdit;
Label8: TLabel;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure DigitalFromSpinValueChanged(Sender: TObject);
procedure DigitalToSpinValueChanged(Sender: TObject);
procedure ValueFromSpinValueChanged(Sender: TObject);
procedure ValueToSpinValueChanged(Sender: TObject);
procedure ValueUnitEditChange(Sender: TObject);
procedure ValueFormatEditChange(Sender: TObject);
procedure Name1EditChange(Sender: TObject);
procedure Name2EditChange(Sender: TObject);
private
{ Private-Deklarationen }
procedure GetSettings;
public
{ Public-Deklarationen }
end;
TSignalSettingsEditor = class(TClassProperty)
public
procedure edit; override;
function GetAttributes: TPropertyAttributes; override;
// function GetValue: string; override;
end;
var
SignalSettings_Form: TSignalSettings_Form;
SignSettings : TSignalSettings;
implementation
{$R *.DFM}
procedure TSignalSettingsEditor.edit;
var
SignSettings2 : TSignalSettings;
TmpSignSettings : TSignalSettings;
n : Integer;
begin
TmpSignSettings := TSignalSettings.Create;
SignalSettings_Form := TSignalSettings_Form.Create(Application);
AbLoadFormPos(SignalSettings_Form);
try
with SignalSettings_Form do begin
SignSettings := TSignalSettings(GetOrdValue);
TmpSignSettings.Assign(SignSettings);
GetSettings;
if ShowModal = mrOK then begin
Modified;
for n := 1 to propCount - 1 do begin
SignSettings2 := TSignalSettings(GetOrdValueAt(n));
SignSettings2.Assign(SignSettings);
end;
end else begin
SignSettings.Assign(TmpSignSettings);
end;
end;
finally
AbSaveFormPos(SignalSettings_Form);
TmpSignSettings.Free;
SignalSettings_Form.Free;
end;
end;
function TSignalSettingsEditor.GetAttributes: TPropertyAttributes;
begin
Result := [paMultiSelect, paSubProperties, paAutoUpdate, paDialog, paReadOnly];
end;
{
function TSignalSettingsEditor.GetValue: string;
begin
result := '(TSignalSettings)';
end;
}
procedure TSignalSettings_Form.GetSettings;
begin
with SignSettings do begin
ValueFromSpin.Value := ValueFrom;
ValueToSpin.Value := ValueTo;
DigitalFromSpin.Value := DigitalFrom;
DigitalToSpin.Value := DigitalTo;
ValueUnitEdit.Text := ValueUnit;
ValueFormatEdit.Text := ValueFormat;
Name1Edit.Text := Name1;
Name2Edit.Text := Name2;
end;
end;
procedure TSignalSettings_Form.DigitalFromSpinValueChanged(
Sender: TObject);
begin
SignSettings.DigitalFrom := DigitalFromSpin.ValueAsInt;
end;
procedure TSignalSettings_Form.DigitalToSpinValueChanged(Sender: TObject);
begin
SignSettings.DigitalTo := DigitalToSpin.ValueAsInt;
end;
procedure TSignalSettings_Form.ValueFromSpinValueChanged(Sender: TObject);
begin
SignSettings.ValueFrom := ValueFromSpin.ValueAsSingle;
end;
procedure TSignalSettings_Form.ValueToSpinValueChanged(Sender: TObject);
begin
SignSettings.ValueTo := ValueToSpin.ValueAsSingle;
end;
procedure TSignalSettings_Form.ValueUnitEditChange(Sender: TObject);
begin
SignSettings.ValueUnit := ValueUnitEdit.Text;
end;
procedure TSignalSettings_Form.ValueFormatEditChange(Sender: TObject);
begin
SignSettings.ValueFormat := ValueFormatEdit.Text;
end;
procedure TSignalSettings_Form.Name1EditChange(Sender: TObject);
begin
SignSettings.Name1 := Name1Edit.Text;
end;
procedure TSignalSettings_Form.Name2EditChange(Sender: TObject);
begin
SignSettings.Name2 := Name2Edit.Text;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -