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

📄 unit1.pas

📁 dicom viewer 医学影像浏览器
💻 PAS
字号:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, OleCtrls, ezDICOMax_TLB, ImgList, ComCtrls, ToolWin, StdCtrls,
  CheckLst,unit2;

type
  TForm1 = class(TForm)
    ezDICOMX1: TezDICOMX;
    OpenDialog1: TOpenDialog;
    ToolBar1: TToolBar;
    ToolButton1: TToolButton;
    ImageList1: TImageList;
    ToolButton2: TToolButton;
    ToolButton3: TToolButton;
    ToolButton4: TToolButton;
    ToolButton5: TToolButton;
    ToolButton6: TToolButton;
    SaveDialog1: TSaveDialog;
    ToolButton11: TToolButton;
    ToolButton12: TToolButton;
    ComboBox2: TComboBox;
    ToolButton13: TToolButton;
    ComboBox3: TComboBox;
    ToolButton9: TToolButton;
    ComboBox4: TComboBox;
    ToolButton10: TToolButton;
    ToolButton7: TToolButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    ToolButton15: TToolButton;
    ToolButton16: TToolButton;
    ToolButton17: TToolButton;
    ToolButton18: TToolButton;
    ToolButton19: TToolButton;
    ToolButton20: TToolButton;
    ToolButton21: TToolButton;
    ComboBox1: TComboBox;
    Label3: TLabel;
    procedure FormCreate(Sender: TObject);
    procedure FormResize(Sender: TObject);
    procedure ToolButton1Click(Sender: TObject);
    procedure ToolButton6Click(Sender: TObject);
    procedure ToolButton3Click(Sender: TObject);
    procedure ToolButton4Click(Sender: TObject);
    procedure ComboBox1Select(Sender: TObject);
    procedure ComboBox2Select(Sender: TObject);
    procedure ComboBox3Select(Sender: TObject);
    procedure ComboBox4Select(Sender: TObject);
    procedure ezDICOMX1DCMmouseMoveIntensity(ASender: TObject; X, Y,
      Button, Shift, Intensity: Integer; RGB: WordBool);
    procedure ToolButton17Click(Sender: TObject);
    procedure ToolButton16Click(Sender: TObject);
    procedure Edit2KeyPress(Sender: TObject; var Key: Char);
    procedure Edit1KeyPress(Sender: TObject; var Key: Char);
    procedure ToolButton7Click(Sender: TObject);
    procedure ToolButton19Click(Sender: TObject);
    procedure ToolButton20Click(Sender: TObject);
    procedure ToolButton21Click(Sender: TObject);
    procedure Label3Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
     ezdicomx1.DCMtoolbar:=false;
     ezdicomx1.DCMsmoothOn:=true;
     windowstate:=wsmaximized;
end;

procedure TForm1.FormResize(Sender: TObject);
begin
   ezdicomx1.Height:=clientheight-toolbar1.Height;
   ezdicomx1.Width:=clientwidth;
end;

procedure TForm1.ToolButton1Click(Sender: TObject);
begin
   ezdicomx1.DCMloadmultiplefiles := true;
   if not opendialog1.Execute then exit;
   ezdicomx1.DCMfilename:=opendialog1.FileName;
end;

procedure TForm1.ToolButton6Click(Sender: TObject);
begin
   if not SaveDialog1.Execute then exit;
     ezdicomx1.DCMsaveToFile := SaveDialog1.FileName;
end;

procedure TForm1.ToolButton3Click(Sender: TObject);
begin
    if ezdicomx1.DCMslice > 1 then
    ezdicomx1.DCMslice := ezdicomx1.DCMslice -1
  else
    ezdicomx1.DCMslice := ezdicomx1.DCMimageSlices;
end;

procedure TForm1.ToolButton4Click(Sender: TObject);
begin
    if ezdicomx1.DCMslice < ezdicomx1.DCMimageSlices then
    ezdicomx1.DCMslice := ezdicomx1.DCMslice +1
  else
    ezdicomx1.DCMslice := 1;
end;

procedure TForm1.ComboBox1Select(Sender: TObject);
   var
    s1,s2,s3:string;
begin
    s1:=combobox1.Text;
    s2:=copy(s1,1,1);
    s3:=copy(s1,3,1);
    ezdicomx1.DCMmosaicFirstSlice := 1;
    ezdicomx1.DCMmosaicLastSlice := maxint;
    ezdicomx1.DCMmosaicRows:=strtoint(s2);
    ezdicomx1.DCMmosaicCols:=strtoint(s3);
end;

procedure TForm1.ComboBox2Select(Sender: TObject);
   var lPct: integer;
begin
     lPct :=combobox2.ItemIndex*50;
     if lPct = 0 then begin
         if not ezdicomx1.DCMbestFitZoom then
            ezdicomx1.DCMbestFitZoom := true;
     end else begin
         if ezdicomx1.DCMbestFitZoom then
            ezdicomx1.DCMbestFitZoom := false;
         ezdicomx1.DCMzoomPct := lPct;
     end;
end;

procedure TForm1.ComboBox3Select(Sender: TObject);
begin
   case combobox3.ItemIndex of
     0:ezdicomx1.DCMcolorScheme:=1;
     1:ezdicomx1.DCMcolorScheme:=2;
     2:ezdicomx1.DCMcolorScheme:=-1;
     3:ezdicomx1.DCMcolorScheme:=-2;
   end;
end;

procedure TForm1.ComboBox4Select(Sender: TObject);
begin
   ezdicomx1.DCMtool:=combobox4.ItemIndex+1;
end;

procedure TForm1.ezDICOMX1DCMmouseMoveIntensity(ASender: TObject; X, Y,
  Button, Shift, Intensity: Integer; RGB: WordBool);
begin
    caption:=inttostr(x)+','+inttostr(y)+':'+inttostr(intensity);
end;

procedure TForm1.ToolButton17Click(Sender: TObject);
begin
   ezdicomx1.DCMuseRecommendedContrast:=true;
end;

procedure TForm1.ToolButton16Click(Sender: TObject);
begin
   ezdicomx1.DCMwinWidth:=strtoint(edit1.Text);
   ezdicomx1.DCMwinCenter:=strtoint(edit2.Text);
end;

procedure TForm1.Edit2KeyPress(Sender: TObject; var Key: Char);
begin
   if  not (key in['0'..'9',#8]) then
   key:=#0;
end;

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin
   if  not (key in['0'..'9',#8]) then
   key:=#0;
end;

procedure TForm1.ToolButton7Click(Sender: TObject);
begin
    if ezdicomx1.DCMshowHeader then
    ezdicomx1.DCMshowHeader:=false
    else
    ezdicomx1.DCMshowHeader:=true;
end;

procedure TForm1.ToolButton19Click(Sender: TObject);
begin
    if ezdicomx1.DCMsmoothOn=true then
   ezdicomx1.DCMsmoothOn:=false
   else
   ezdicomx1.DCMsmoothOn:=true;
end;

procedure TForm1.ToolButton20Click(Sender: TObject);
begin
   ezdicomx1.DCMtool:=5;
end;

procedure TForm1.ToolButton21Click(Sender: TObject);
begin
    if ezdicomx1.DCMshowHeader then
    ezdicomx1.DCMcopyHeader2Clipboard
  else
    ezdicomx1.DCMcopyImage2Clipboard;
end;

procedure TForm1.Label3Click(Sender: TObject);
begin
   aboutbox.ShowModal;
end;

end.

⌨️ 快捷键说明

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