📄 courseselect_tlb.~pas
字号:
property Enabled: WordBool read Get_Enabled write Set_Enabled;
property Cursor: Smallint read Get_Cursor write Set_Cursor;
end;
// *********************************************************************//
// DispIntf: ICourseSelectClientDisp
// Flags: (4416) Dual OleAutomation Dispatchable
// GUID: {321D3306-C388-4D72-A35C-02948B8900F6}
// *********************************************************************//
ICourseSelectClientDisp = dispinterface
['{321D3306-C388-4D72-A35C-02948B8900F6}']
property Visible: WordBool dispid 1;
property AutoScroll: WordBool dispid 2;
property AutoSize: WordBool dispid 3;
property AxBorderStyle: TxActiveFormBorderStyle dispid 4;
property Caption: WideString dispid -518;
property Color: OLE_COLOR dispid -501;
property Font: IFontDisp dispid -512;
property KeyPreview: WordBool dispid 5;
property PixelsPerInch: Integer dispid 6;
property PrintScale: TxPrintScale dispid 7;
property Scaled: WordBool dispid 8;
property Active: WordBool readonly dispid 9;
property DropTarget: WordBool dispid 10;
property HelpFile: WideString dispid 11;
property DoubleBuffered: WordBool dispid 12;
property VisibleDockClientCount: Integer readonly dispid 13;
property Enabled: WordBool dispid -514;
property Cursor: Smallint dispid 14;
procedure AboutBox; dispid -552;
end;
// *********************************************************************//
// DispIntf: ICourseSelectClientEvents
// Flags: (0)
// GUID: {59283F69-7462-4CEB-A6A2-5048F8C089B8}
// *********************************************************************//
ICourseSelectClientEvents = dispinterface
['{59283F69-7462-4CEB-A6A2-5048F8C089B8}']
procedure OnActivate; dispid 1;
procedure OnClick; dispid 2;
procedure OnCreate; dispid 3;
procedure OnDblClick; dispid 5;
procedure OnDestroy; dispid 6;
procedure OnDeactivate; dispid 7;
procedure OnKeyPress(var Key: Smallint); dispid 11;
procedure OnPaint; dispid 16;
end;
// *********************************************************************//
// OLE Control Proxy class declaration
// Control Name : TCourseSelectClient
// Help String : CourseSelectClient Control
// Default Interface: ICourseSelectClient
// Def. Intf. DISP? : No
// Event Interface: ICourseSelectClientEvents
// TypeFlags : (34) CanCreate Control
// *********************************************************************//
TCourseSelectClientOnKeyPress = procedure(Sender: TObject; var Key: Smallint) of object;
TCourseSelectClient = class(TOleControl)
private
FOnActivate: TNotifyEvent;
FOnClick: TNotifyEvent;
FOnCreate: TNotifyEvent;
FOnDblClick: TNotifyEvent;
FOnDestroy: TNotifyEvent;
FOnDeactivate: TNotifyEvent;
FOnKeyPress: TCourseSelectClientOnKeyPress;
FOnPaint: TNotifyEvent;
FIntf: ICourseSelectClient;
function GetControlInterface: ICourseSelectClient;
protected
procedure CreateControl;
procedure InitControlData; override;
public
procedure AboutBox;
property ControlInterface: ICourseSelectClient read GetControlInterface;
property DefaultInterface: ICourseSelectClient read GetControlInterface;
property Visible: WordBool index 1 read GetWordBoolProp write SetWordBoolProp;
property Active: WordBool index 9 read GetWordBoolProp;
property DropTarget: WordBool index 10 read GetWordBoolProp write SetWordBoolProp;
property HelpFile: WideString index 11 read GetWideStringProp write SetWideStringProp;
property DoubleBuffered: WordBool index 12 read GetWordBoolProp write SetWordBoolProp;
property VisibleDockClientCount: Integer index 13 read GetIntegerProp;
property Enabled: WordBool index -514 read GetWordBoolProp write SetWordBoolProp;
published
property AutoScroll: WordBool index 2 read GetWordBoolProp write SetWordBoolProp stored False;
property AutoSize: WordBool index 3 read GetWordBoolProp write SetWordBoolProp stored False;
property AxBorderStyle: TOleEnum index 4 read GetTOleEnumProp write SetTOleEnumProp stored False;
property Caption: WideString index -518 read GetWideStringProp write SetWideStringProp stored False;
property Color: TColor index -501 read GetTColorProp write SetTColorProp stored False;
property Font: TFont index -512 read GetTFontProp write SetTFontProp stored False;
property KeyPreview: WordBool index 5 read GetWordBoolProp write SetWordBoolProp stored False;
property PixelsPerInch: Integer index 6 read GetIntegerProp write SetIntegerProp stored False;
property PrintScale: TOleEnum index 7 read GetTOleEnumProp write SetTOleEnumProp stored False;
property Scaled: WordBool index 8 read GetWordBoolProp write SetWordBoolProp stored False;
property Cursor: Smallint index 14 read GetSmallintProp write SetSmallintProp stored False;
property OnActivate: TNotifyEvent read FOnActivate write FOnActivate;
property OnClick: TNotifyEvent read FOnClick write FOnClick;
property OnCreate: TNotifyEvent read FOnCreate write FOnCreate;
property OnDblClick: TNotifyEvent read FOnDblClick write FOnDblClick;
property OnDestroy: TNotifyEvent read FOnDestroy write FOnDestroy;
property OnDeactivate: TNotifyEvent read FOnDeactivate write FOnDeactivate;
property OnKeyPress: TCourseSelectClientOnKeyPress read FOnKeyPress write FOnKeyPress;
property OnPaint: TNotifyEvent read FOnPaint write FOnPaint;
end;
procedure Register;
implementation
uses ComObj;
procedure TCourseSelectClient.InitControlData;
const
CEventDispIDs: array [0..7] of DWORD = (
$00000001, $00000002, $00000003, $00000005, $00000006, $00000007,
$0000000B, $00000010);
CTFontIDs: array [0..0] of DWORD = (
$FFFFFE00);
CControlData: TControlData2 = (
ClassID: '{D954AE2D-3065-432A-B433-C0A7A183E937}';
EventIID: '{59283F69-7462-4CEB-A6A2-5048F8C089B8}';
EventCount: 8;
EventDispIDs: @CEventDispIDs;
LicenseKey: nil (*HR:$80040154*);
Flags: $0000001D;
Version: 401;
FontCount: 1;
FontIDs: @CTFontIDs);
begin
ControlData := @CControlData;
TControlData2(CControlData).FirstEventOfs := Cardinal(@@FOnActivate) - Cardinal(Self);
end;
procedure TCourseSelectClient.CreateControl;
procedure DoCreate;
begin
FIntf := IUnknown(OleObject) as ICourseSelectClient;
end;
begin
if FIntf = nil then DoCreate;
end;
function TCourseSelectClient.GetControlInterface: ICourseSelectClient;
begin
CreateControl;
Result := FIntf;
end;
procedure TCourseSelectClient.AboutBox;
begin
DefaultInterface.AboutBox;
end;
procedure Register;
begin
RegisterComponents('ActiveX',[TCourseSelectClient]);
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -