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

📄 ezdicomax_tlb.pas

📁 用Delphi做的读取医学图片的控件及代码
💻 PAS
📖 第 1 页 / 共 3 页
字号:
    FOnDblClick: TNotifyEvent;
    FOnDestroy: TNotifyEvent;
    FOnDeactivate: TNotifyEvent;
    FOnKeyPress: TezDICOMXOnKeyPress;
    FOnPaint: TNotifyEvent;
    FOnDCMmouseDown: TezDICOMXDCMmouseDown;
    FOnDCMmouseMove: TezDICOMXDCMmouseMove;
    FOnDCMmouseUp: TezDICOMXDCMmouseUp;
    FOnDCMmouseMoveIntensity: TezDICOMXDCMmouseMoveIntensity;
    FIntf: IezDICOMX;
    function  GetControlInterface: IezDICOMX;
  protected
    procedure CreateControl;
    procedure InitControlData; override;
    procedure Set_DCMmosaicX(Row: Integer; Col: Integer; FirstSlice: Integer; Param4: Integer);
    procedure Set_DCMwriteHeader2Text(const DICOMinput: WideString; const Param2: WideString);
    function Get_DCMfilenameSilentErrors(const Filename: WideString): Integer;
    function Get_DCMwriteHeader2String(const DICOMinput: WideString): WideString;
  public
    property  ControlInterface: IezDICOMX read GetControlInterface;
    property  DefaultInterface: IezDICOMX read GetControlInterface;
    property Visible: WordBool index 201 read GetWordBoolProp write SetWordBoolProp;
    property Active: WordBool index 209 read GetWordBoolProp;
    property DropTarget: WordBool index 210 read GetWordBoolProp write SetWordBoolProp;
    property HelpFile: WideString index 211 read GetWideStringProp write SetWideStringProp;
    property ScreenSnap: WordBool index 212 read GetWordBoolProp write SetWordBoolProp;
    property SnapBuffer: Integer index 213 read GetIntegerProp write SetIntegerProp;
    property DoubleBuffered: WordBool index 214 read GetWordBoolProp write SetWordBoolProp;
    property AlignDisabled: WordBool index 215 read GetWordBoolProp;
    property VisibleDockClientCount: Integer index 216 read GetIntegerProp;
    property Enabled: WordBool index -514 read GetWordBoolProp write SetWordBoolProp;
    property DCMimageWid: Integer index 224 read GetIntegerProp;
    property DCMimageHt: Integer index 225 read GetIntegerProp;
    property DCMimageSlices: Integer index 226 read GetIntegerProp;
    property DCMsliceMinBright: Integer index 227 read GetIntegerProp;
    property DCMsliceMaxBright: Integer index 228 read GetIntegerProp;
    property DCMmmHt: Double index 229 read GetDoubleProp;
    property DCMmmWid: Double index 230 read GetDoubleProp;
    property DCMmmSlices: Double index 231 read GetDoubleProp;
    property DCMslope: Double index 232 read GetDoubleProp;
    property DCMintercept: Double index 233 read GetDoubleProp;
    property DCMrecWinCenter: Integer index 234 read GetIntegerProp;
    property DCMrecWinWidth: Integer index 235 read GetIntegerProp;
    property DCMmosaicX[Row: Integer; Col: Integer; FirstSlice: Integer]: Integer write Set_DCMmosaicX;
    property DCMlineMM: Double index 243 read GetDoubleProp;
    property DCMwriteHeader2Text[const DICOMinput: WideString]: WideString write Set_DCMwriteHeader2Text;
    property DCMversionInfo: WideString index 248 read GetWideStringProp;
    property DCMsaveToFile: WideString index 251 write SetWideStringProp;
    property DCMcopyImage2Clipboard: WordBool index 253 read GetWordBoolProp;
    property DCMcopyHeader2Clipboard: WordBool index 254 read GetWordBoolProp;
    property DCMunloadImages: Integer index 255 write SetIntegerProp;
    property DCMvertScrollPosition: Integer index 257 read GetIntegerProp;
    property DCMhorzScrollPosition: Integer index 258 read GetIntegerProp;
    property DCMfilenameSilentErrors[const Filename: WideString]: Integer read Get_DCMfilenameSilentErrors;
    property DCMwriteHeader2String[const DICOMinput: WideString]: WideString read Get_DCMwriteHeader2String;
  published
    property Anchors;
    property  ParentColor;
    property  ParentFont;
    property  Align;
    property  DragCursor;
    property  DragMode;
    property  ParentShowHint;
    property  PopupMenu;
    property  ShowHint;
    property  TabOrder;
    property  OnDragDrop;
    property  OnDragOver;
    property  OnEndDrag;
    property  OnEnter;
    property  OnExit;
    property  OnStartDrag;
    property AutoScroll: WordBool index 202 read GetWordBoolProp write SetWordBoolProp stored False;
    property AutoSize: WordBool index 203 read GetWordBoolProp write SetWordBoolProp stored False;
    property AxBorderStyle: TOleEnum index 204 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 205 read GetWordBoolProp write SetWordBoolProp stored False;
    property PixelsPerInch: Integer index 206 read GetIntegerProp write SetIntegerProp stored False;
    property PrintScale: TOleEnum index 207 read GetTOleEnumProp write SetTOleEnumProp stored False;
    property Scaled: WordBool index 208 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMslice: Integer index 217 read GetIntegerProp write SetIntegerProp stored False;
    property DCMzoomPct: Integer index 218 read GetIntegerProp write SetIntegerProp stored False;
    property DCMsmoothOn: WordBool index 219 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMfilenameOld: WideString index 220 read GetWideStringProp write SetWideStringProp stored False;
    property DCMwinCenter: Double index 221 read GetDoubleProp write SetDoubleProp stored False;
    property DCMwinWidth: Double index 222 read GetDoubleProp write SetDoubleProp stored False;
    property DCMoverlayOn: WordBool index 223 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMoverlayColor: Integer index 236 read GetIntegerProp write SetIntegerProp stored False;
    property DCMmosaicFirstSlice: Integer index 238 read GetIntegerProp write SetIntegerProp stored False;
    property DCMmosaicLastSlice: Integer index 239 read GetIntegerProp write SetIntegerProp stored False;
    property DCMcolorScheme: Integer index 240 read GetIntegerProp write SetIntegerProp stored False;
    property DCMtool: Integer index 241 read GetIntegerProp write SetIntegerProp stored False;
    property DCMtoolbar: WordBool index 242 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMbestFitZoom: WordBool index 244 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMloadMultipleFiles: WordBool index 246 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMuseRecommendedContrast: WordBool index 247 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMmosaicRows: Integer index 249 read GetIntegerProp write SetIntegerProp stored False;
    property DCMmosaicCols: Integer index 250 read GetIntegerProp write SetIntegerProp stored False;
    property DCMshowHeader: WordBool index 252 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMopenBtnEnabled: WordBool index 256 read GetWordBoolProp write SetWordBoolProp stored False;
    property DCMfilename: WideString index 259 read GetWideStringProp write SetWideStringProp 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: TezDICOMXOnKeyPress read FOnKeyPress write FOnKeyPress;
    property OnPaint: TNotifyEvent read FOnPaint write FOnPaint;
    property OnDCMmouseDown: TezDICOMXDCMmouseDown read FOnDCMmouseDown write FOnDCMmouseDown;
    property OnDCMmouseMove: TezDICOMXDCMmouseMove read FOnDCMmouseMove write FOnDCMmouseMove;
    property OnDCMmouseUp: TezDICOMXDCMmouseUp read FOnDCMmouseUp write FOnDCMmouseUp;
    property OnDCMmouseMoveIntensity: TezDICOMXDCMmouseMoveIntensity read FOnDCMmouseMoveIntensity write FOnDCMmouseMoveIntensity;
  end;

procedure Register;

resourcestring
  dtlServerPage = 'Servers';

  dtlOcxPage = 'ActiveX';

implementation

uses ComObj;

procedure TezDICOMX.InitControlData;
const
  CEventDispIDs: array [0..11] of DWORD = (
    $000000C9, $000000CA, $000000CB, $000000CC, $000000CD, $000000CE,
    $000000CF, $000000D0, $000000D1, $000000D2, $000000D3, $000000D4);
  CTFontIDs: array [0..0] of DWORD = (
    $FFFFFE00);
  CControlData: TControlData2 = (
    ClassID: '{9A2C58CF-4A4B-48BF-B3C9-0756F0F2FA9B}';
    EventIID: '{A2F74C5E-30A4-43BB-9BEA-A5D2EF4858D7}';
    EventCount: 12;
    EventDispIDs: @CEventDispIDs;
    LicenseKey: nil (*HR:$00000000*);
    Flags: $0000001D;
    Version: 401;
    FontCount: 1;
    FontIDs: @CTFontIDs);
begin
  ControlData := @CControlData;
  TControlData2(CControlData).FirstEventOfs := Cardinal(@@FOnActivate) - Cardinal(Self);
end;

procedure TezDICOMX.CreateControl;

  procedure DoCreate;
  begin
    FIntf := IUnknown(OleObject) as IezDICOMX;
  end;

begin
  if FIntf = nil then DoCreate;
end;

function TezDICOMX.GetControlInterface: IezDICOMX;
begin
  CreateControl;
  Result := FIntf;
end;

procedure TezDICOMX.Set_DCMmosaicX(Row: Integer; Col: Integer; FirstSlice: Integer; Param4: Integer);
begin
  DefaultInterface.DCMmosaicX[Row, Col, FirstSlice] := Param4;
end;

procedure TezDICOMX.Set_DCMwriteHeader2Text(const DICOMinput: WideString; const Param2: WideString);
  { Warning: The property DCMwriteHeader2Text has a setter and a getter whose
    types do not match. Delphi was unable to generate a property of
    this sort and so is using a Variant as a passthrough. }
var
  InterfaceVariant: OleVariant;
begin
  InterfaceVariant := DefaultInterface;
  InterfaceVariant.DCMwriteHeader2Text := Param2;
end;

function TezDICOMX.Get_DCMfilenameSilentErrors(const Filename: WideString): Integer;
begin
    Result := DefaultInterface.DCMfilenameSilentErrors[Filename];
end;

function TezDICOMX.Get_DCMwriteHeader2String(const DICOMinput: WideString): WideString;
begin
    Result := DefaultInterface.DCMwriteHeader2String[DICOMinput];
end;

procedure Register;
begin
  RegisterComponents(dtlOcxPage, [TezDICOMX]);
end;

end.

⌨️ 快捷键说明

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