📄 unit1.pas
字号:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ComCtrls, StdCtrls, OleCtrls, ExtCtrls, StrUtils, IniFiles,
Menus, AxCtrls, ActiveX, DICOMax_TLB, ImgList, ToolWin;
const
sVer = '1.01';
type
TForm1 = class(TForm)
tmrPlaySlice: TTimer;
OpenDialog1: TOpenDialog;
SaveDialog1: TSaveDialog;
MainMenu1: TMainMenu;
F1: TMenuItem;
T1: TMenuItem;
I1: TMenuItem;
M1: TMenuItem;
O1: TMenuItem;
O2: TMenuItem;
N1: TMenuItem;
S1: TMenuItem;
N2: TMenuItem;
X1: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N11: TMenuItem;
N12: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
N15: TMenuItem;
N16: TMenuItem;
N501: TMenuItem;
N1001: TMenuItem;
N1501: TMenuItem;
N2001: TMenuItem;
N17: TMenuItem;
N18: TMenuItem;
N19: TMenuItem;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
N23: TMenuItem;
N24: TMenuItem;
N25: TMenuItem;
N26: TMenuItem;
N27: TMenuItem;
N28: TMenuItem;
N29: TMenuItem;
N30: TMenuItem;
N31: TMenuItem;
N32: TMenuItem;
N33: TMenuItem;
N901: TMenuItem;
N902: TMenuItem;
N34: TMenuItem;
N35: TMenuItem;
N37: TMenuItem;
N38: TMenuItem;
N39: TMenuItem;
N40: TMenuItem;
N41: TMenuItem;
N1FPS1: TMenuItem;
N2FPS1: TMenuItem;
N5FPS1: TMenuItem;
N10FPS1: TMenuItem;
N15FPS1: TMenuItem;
N20FPS1: TMenuItem;
N42: TMenuItem;
N43: TMenuItem;
N2X21: TMenuItem;
N2X31: TMenuItem;
N3X31: TMenuItem;
N3X41: TMenuItem;
N4X41: TMenuItem;
N44: TMenuItem;
N45: TMenuItem;
N46: TMenuItem;
N47: TMenuItem;
N48: TMenuItem;
DICOM2: TMenuItem;
N49: TMenuItem;
N50: TMenuItem;
N51: TMenuItem;
N52: TMenuItem;
N53: TMenuItem;
N56: TMenuItem;
N57: TMenuItem;
N58: TMenuItem;
N59: TMenuItem;
N60: TMenuItem;
N61: TMenuItem;
N2X1: TMenuItem;
N4X1: TMenuItem;
N6X1: TMenuItem;
DICOM3: TMenuItem;
DICOM4: TMenuItem;
N62: TMenuItem;
N63: TMenuItem;
N64: TMenuItem;
Cardiac1: TMenuItem;
Flow1: TMenuItem;
GEColor1: TMenuItem;
Gold1: TMenuItem;
HotIron1: TMenuItem;
NIH1: TMenuItem;
NIHFire1: TMenuItem;
NIHIce1: TMenuItem;
RainRamp1: TMenuItem;
Spectrum1: TMenuItem;
XHot1: TMenuItem;
XRain1: TMenuItem;
N65: TMenuItem;
N66: TMenuItem;
N67: TMenuItem;
N68: TMenuItem;
DICOMA2: TMenuItem;
N69: TMenuItem;
DICOM6: TMenuItem;
N70: TMenuItem;
N71: TMenuItem;
BMPJPGDICOM1: TMenuItem;
N72: TMenuItem;
DICOMX1: TDICOMX;
N73: TMenuItem;
DICOMDirR1: TMenuItem;
N74: TMenuItem;
N75: TMenuItem;
N76: TMenuItem;
N77: TMenuItem;
N78: TMenuItem;
N79: TMenuItem;
N80: TMenuItem;
N81: TMenuItem;
N82: TMenuItem;
N83: TMenuItem;
N84: TMenuItem;
N85: TMenuItem;
N86: TMenuItem;
N87: TMenuItem;
N88: TMenuItem;
N89: TMenuItem;
N90: TMenuItem;
N91: TMenuItem;
N92: TMenuItem;
N93: TMenuItem;
N94: TMenuItem;
N95: TMenuItem;
N96: TMenuItem;
N97: TMenuItem;
N98: TMenuItem;
N110: TMenuItem;
N111: TMenuItem;
N99: TMenuItem;
N100: TMenuItem;
N101: TMenuItem;
N102: TMenuItem;
N103: TMenuItem;
N104: TMenuItem;
N105: TMenuItem;
N106: TMenuItem;
N107: TMenuItem;
N108: TMenuItem;
N109: TMenuItem;
N112: TMenuItem;
N36: TMenuItem;
N113: TMenuItem;
N114: TMenuItem;
N115: TMenuItem;
DICOMC1: TMenuItem;
N116: TMenuItem;
N117: TMenuItem;
N118: TMenuItem;
N119: TMenuItem;
Measurements1: TMenuItem;
Filter1: TMenuItem;
N120: TMenuItem;
N121: TMenuItem;
About1: TMenuItem;
N54: TMenuItem;
N122: TMenuItem;
N123: TMenuItem;
AboutApplication1: TMenuItem;
N124: TMenuItem;
tbMain: TToolBar;
ImageList1: TImageList;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
ToolButton3: TToolButton;
ToolButton4: TToolButton;
ToolButton5: TToolButton;
ToolButton6: TToolButton;
ToolButton7: TToolButton;
ToolButton23: TToolButton;
ToolButton24: TToolButton;
ToolButton25: TToolButton;
ToolButton26: TToolButton;
ToolButton29: TToolButton;
ToolButton31: TToolButton;
pmScheme: TPopupMenu;
Gray1: TMenuItem;
N55: TMenuItem;
FireLUT1: TMenuItem;
BlackBody1: TMenuItem;
Done1: TMenuItem;
Cardiac2: TMenuItem;
Flow2: TMenuItem;
GEColor2: TMenuItem;
Gold2: TMenuItem;
HotIron2: TMenuItem;
NIH2: TMenuItem;
NIHFire2: TMenuItem;
NIHIce2: TMenuItem;
RainRamp2: TMenuItem;
Spectrum2: TMenuItem;
XRain2: TMenuItem;
ToolButton33: TToolButton;
ToolButton34: TToolButton;
ShowRuler1: TMenuItem;
ToolButton35: TToolButton;
ToolButton36: TToolButton;
ToolButton37: TToolButton;
tbMeasurement: TToolBar;
ToolButton45: TToolButton;
CoolBar1: TCoolBar;
ToolButton46: TToolButton;
ToolButton47: TToolButton;
ToolButton48: TToolButton;
ToolButton49: TToolButton;
ToolButton50: TToolButton;
ToolButton51: TToolButton;
ToolButton52: TToolButton;
ToolButton53: TToolButton;
ToolButton54: TToolButton;
ToolButton55: TToolButton;
ToolButton56: TToolButton;
ToolButton57: TToolButton;
tbMultiSlice: TToolBar;
ToolButton58: TToolButton;
ToolButton8: TToolButton;
ToolButton9: TToolButton;
ToolButton10: TToolButton;
ToolButton11: TToolButton;
tbOrientation: TToolBar;
ToolButton12: TToolButton;
ToolButton14: TToolButton;
ToolButton15: TToolButton;
ToolButton16: TToolButton;
pmCine: TPopupMenu;
N1FPS2: TMenuItem;
N2FPS2: TMenuItem;
N5FPS2: TMenuItem;
N10FPS2: TMenuItem;
N15FPS2: TMenuItem;
N20FPS2: TMenuItem;
N125: TMenuItem;
Stop1: TMenuItem;
pmMosaic: TPopupMenu;
N2X22: TMenuItem;
N2X32: TMenuItem;
N3X32: TMenuItem;
N3X42: TMenuItem;
N4X42: TMenuItem;
N126: TMenuItem;
UserDefine1: TMenuItem;
N127: TMenuItem;
Cancel1: TMenuItem;
pnlMain: TPanel;
CoolBar2: TCoolBar;
oolBars1: TMenuItem;
MainTool1: TMenuItem;
Orientation1: TMenuItem;
MultiSliceTool1: TMenuItem;
Measurements2: TMenuItem;
psMain: TPageScroller;
XRain3: TMenuItem;
ToolButton13: TToolButton;
pmZoom: TPopupMenu;
ToolButton17: TToolButton;
N502: TMenuItem;
N1002: TMenuItem;
N1502: TMenuItem;
N2002: TMenuItem;
N128: TMenuItem;
Fit1: TMenuItem;
MouseWheel1: TMenuItem;
EnableScrollforMultiSlice1: TMenuItem;
DisableScrollforMultiSlice1: TMenuItem;
StatusBar1: TStatusBar;
N4002: TMenuItem;
N4001: TMenuItem;
ToolButton18: TToolButton;
ToolButton19: TToolButton;
M50: TMenuItem;
M60: TMenuItem;
M80: TMenuItem;
M100: TMenuItem;
M120: TMenuItem;
N129: TMenuItem;
ToolButton20: TToolButton;
WindowingPreset1: TMenuItem;
FS1: TMenuItem;
ToolButton21: TToolButton;
ToolButton22: TToolButton;
pmExitFS: TPopupMenu;
ExitFullScreenMode1: TMenuItem;
N130: TMenuItem;
ShowMainToolBar1: TMenuItem;
ShowOToolBar1: TMenuItem;
ShowCineToolBar1: TMenuItem;
ShowMeasureMentToolBar1: TMenuItem;
procedure FSShowToolBar(Sender: TObject);
procedure InitialDInfoSaveValue;
procedure RefreshPreview;
procedure InitialMenuItem;
procedure ReadIniSetting;
procedure EnableMultiSlice(Value : Boolean);
procedure MenuMScrollClick(Sender: TObject);
procedure MenuToolBarClick(Sender: TObject);
procedure ToolBtnRotateClick(Sender: TObject);
procedure ToolBtnDICOMToolClick(Sender: TObject);
procedure MenuDICOMToolClick(Sender: TObject);
procedure MenuDICOMMSizeClick(Sender: TObject);
procedure MenuDICOMMRatioClick(Sender: TObject);
procedure MenuDICOMSEClick(Sender: TObject);
procedure MenuPlaySliceClick(Sender: TObject);
procedure MenuFlipSliceClick(Sender: TObject);
procedure MenuRotateClick(Sender: TObject);
procedure MenuProcessIMGClick(Sender: TObject);
procedure MenuOverlayLanguageClick(Sender: TObject);
procedure MenuOverlayColorClick(Sender: TObject);
procedure MenuZoomIMGClick(Sender: TObject);
procedure MenuLUTClick(Sender: TObject);
procedure IMeasureColorClick(Sender: TObject);
procedure MenuOCXLanguageClick(Sender: TObject);
procedure tmrPlaySliceTimer(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure O2Click(Sender: TObject);
procedure S1Click(Sender: TObject);
procedure X1Click(Sender: TObject);
procedure N22Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N40Click(Sender: TObject);
procedure N41Click(Sender: TObject);
procedure N48Click(Sender: TObject);
procedure DICOM2Click(Sender: TObject);
procedure DICOM3Click(Sender: TObject);
procedure N53Click(Sender: TObject);
procedure DICOM4Click(Sender: TObject);
procedure N72Click(Sender: TObject);
procedure DICOM6Click(Sender: TObject);
procedure N80Click(Sender: TObject);
procedure N110Click(Sender: TObject);
procedure N111Click(Sender: TObject);
procedure N100Click(Sender: TObject);
procedure N109Click(Sender: TObject);
procedure N112Click(Sender: TObject);
procedure N85Click(Sender: TObject);
procedure N86Click(Sender: TObject);
procedure DICOMDirR1Click(Sender: TObject);
procedure N114Click(Sender: TObject);
procedure N113Click(Sender: TObject);
procedure N115Click(Sender: TObject);
procedure DICOMC1Click(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure ShowRuler1Click(Sender: TObject);
procedure pnlMainResize(Sender: TObject);
procedure ToolButton36Click(Sender: TObject);
procedure ToolButton23Click(Sender: TObject);
procedure ToolButton31Click(Sender: TObject);
procedure ToolButton13Click(Sender: TObject);
procedure ToolButton9Click(Sender: TObject);
procedure ToolButton58Click(Sender: TObject);
procedure AboutApplication1Click(Sender: TObject);
procedure DICOMX1DCMmouseMove(ASender: TObject; X, Y, Button, Shift: Integer);
procedure ToolButton24Click(Sender: TObject);
procedure DICOMX1DCMmouseUp(ASender: TObject; X, Y, Button, Shift: Integer);
procedure ToolButton18Click(Sender: TObject);
procedure DICOMA2Click(Sender: TObject);
procedure BMPJPGDICOM1Click(Sender: TObject);
procedure WindowingPreset1Click(Sender: TObject);
procedure ToolButton21Click(Sender: TObject);
procedure ExitFullScreenMode1Click(Sender: TObject);
private
{ Private declarations }
procedure UnCheckImageTool;
procedure UnCheckImageZoom;
procedure UnCheckSlicePlay;
procedure UnCheckSliceFlip;
public
{ Public declarations }
end;
var
Form1: TForm1;
gsOpenFileName : String;
giEnableErrorReport, giEnableMouseWheel, giMagRadious, giMagSize, giEnableSmooth,
giOCXLanguage, giOverlayLanguage, giOverlayColor, giOverlayShowRuler, giMSItemCount,
giMSATextColor, giMSATextSize, giMSRTextColor, giMSRTextSize, giMSLineColor, giAssociateFile : Integer;
// giShowOverlay, giImageZoom, giImageTool : Integer;
giFormPrvLeft,giFormPrvTop,giFormPrvWidth,giFormPrvHeight : Integer;
implementation
uses Unit2, Unit3, Unit4, Unit5, Unit7, Unit8, Unit6, Unit9, Unit10;
{$R *.dfm}
procedure TForm1.FSShowToolBar(Sender: TObject);
var
iTag : Integer;
bEnable : Boolean;
begin
iTag := (Sender as TMenuItem).Tag;
bEnable := not (Sender as TMenuItem).Checked;
(Sender as TMenuItem).Checked := bEnable;
Case iTag of
1:
begin
if bEnable then
CoolBar1.Visible := True;
CoolBar1.Bands[0].Visible := bEnable;
end;
2:
begin
if bEnable then
CoolBar1.Visible := True;
CoolBar1.Bands[1].Visible := bEnable;
end;
3:
begin
if bEnable then
CoolBar1.Visible := True;
CoolBar1.Bands[2].Visible := bEnable;
end;
4:
CoolBar2.Visible := bEnable;
end;
if (CoolBar1.Bands[0].Visible=False) and (CoolBar1.Bands[1].Visible=False) and (CoolBar1.Bands[2].Visible=False) then
CoolBar1.Visible := False;
end;
procedure TForm1.InitialDInfoSaveValue;
begin
//Set DICOM Information
frmSaveDICOM.leSOPCUID.Text := '1.2.840.10008.5.1.4.1.1.7';
frmSaveDICOM.leSOPIUID.Text := '1.2.7.3.8.2007.10.15.23.00.00.1';
frmSaveDICOM.leICUID.Text := '1.2.7.3.8.2007.10.15.23.00.00.3';
frmSaveDICOM.leIVName.Text := 'DICOM3AX_V1.90';
frmSaveDICOM.leSAET.Text := 'Source_AET';
frmSaveDICOM.leStudyDate.Text := FormatDateTime('YYYYMMDD', Now);
frmSaveDICOM.leSeriesDate.Text := FormatDateTime('YYYYMMDD', Now);
frmSaveDICOM.leImageDate.Text := FormatDateTime('YYYYMMDD', Now);
frmSaveDICOM.leStudyTime.Text := FormatDateTime('HHMMSS.000000', Now);
frmSaveDICOM.leSeriesTime.Text := FormatDateTime('HHMMSS.000000', Now);
frmSaveDICOM.leImageTime.Text := FormatDateTime('HHMMSS.000000', Now);
frmSaveDICOM.leModality.Text := 'OT';
frmSaveDICOM.leManufacturer.Text := 'DICOM3CN';
frmSaveDICOM.leInstitutionName.Text := 'http://www.dicom3.cn';
frmSaveDICOM.leCityName.Text := 'NJ';
frmSaveDICOM.leRPName.Text := 'Dr.Lee';
frmSaveDICOM.leStudyDescription.Text := 'Image to DICOM File Demo!';
frmSaveDICOM.lePName.Text := 'PtName';
frmSaveDICOM.lePID.Text := '200802280001';
frmSaveDICOM.lePDOB.Text := '19900101';
frmSaveDICOM.lePSex.Text := 'M';
frmSaveDICOM.leStudyIUID.Text := '1.2.7.3.8.' + FormatDateTime('YYYY.MM.DD',Now) + '.' + FormatDateTime('HH.MM.SS',Now) + '.101';
frmSaveDICOM.leSeriesIUID.Text := '1.2.7.3.8.' + FormatDateTime('YYYY.MM.DD',Now) + '.' + FormatDateTime('HH.MM.SS',Now) + '.201';
frmSaveDICOM.leStudyID.Text := '200802286001';
frmSaveDICOM.leSeriesNumber.Text := '1';
frmSaveDICOM.leImageNumber.Text := '1';
end;
procedure TForm1.RefreshPreview;
begin
//Refesh Preview Image
if N18.Checked then
MenuZoomIMGClick(N18);
if N501.Checked then
MenuZoomIMGClick(N501);
if N1001.Checked then
MenuZoomIMGClick(N1001);
if N1501.Checked then
MenuZoomIMGClick(N1501);
if N2001.Checked then
MenuZoomIMGClick(N2001);
if N4001.Checked then
MenuZoomIMGClick(N4001);
if N20.Checked then
MenuZoomIMGClick(N20);
end;
procedure TForm1.InitialMenuItem;
begin
//Error Report
if giEnableErrorReport=1 then
MenuDICOMSEClick(N62)
else
MenuDICOMSEClick(N63);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -